Boundary Events are catching events you attach to an activity (Task, Subprocess or Call Activity). They’re a type of intermediate event and they’re used for error and exception handling or compensation.
Boundary Events can be triggered by a message, timer, error, condition, signal or escalation while a task is running.
You configure Boundary Events as interrupting or non-interrupting. An interrupting boundary event cancels the bound Activity and the process takes the alternative path. A non-interrupting event continues the Activity and the process takes the alternative path in parallel.
Boundary Events appear the same as Intermediate Events — circles with a double edge.The edges of an interrupting boundary event are continuous, those of a non-interrupting boundary are dashed.
The marker changes according to the type of intermediate event. They differ in one respect from Intermediate Events — in a diagram, a Boundary Event must be positioned on the edge of an Activity.
A Message Boundary is triggered when a message is received. It changes the normal flow into an exception flow when it’s triggered.
It can be interrupting or non-interrupting.
Fill in these fields in the Attributes tab:
Message Reference
The ID of the Message that is sent or received by the Task.
Click
Boundary
Define whether the Boundary Event is an interrupting or non-interrupting event.
Define this attribute in the Output tab of the Attributes panel:
Output
The Data Output sent by the element.
To add a Data Output, click Add.
To remove a Data Output, select the Data Output from the list then click Remove.
To complete or edit a Data Output, select the Data Output from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Data Output. |
Description | A description of the Data Output. |
Item Definition | The data type of the Data Output. |
If you haven’t already defined the Message Definition at a global process level, you can define it in the Message tab:
Message
The message that’s sent or received by a participant at the start, end or during or a process.
To add a message, click Add.
To remove a message, select the message from the list then click Remove.
To complete or edit a message, select the message from the list and fill in these fields:
Field | Description |
---|---|
Name | The name of the message. |
Description | A description of the message. |
Item Definition | The data type of the message. |
A Conditional Boundary is triggered when a condition evaluates to true.
It can be interrupting or non-interrupting.
Fill in these fields in the Attributes tab:
Boundary
Define whether the Boundary Event is an interrupting or non-interrupting event.
Add condition
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 |
Operator | Click |
Second operand | Select a Data Element or insert a value. |
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. |
Define this attribute in the Output tab of the Attributes panel:
Output
The Data Output sent by the element.
To add a Data Output, click Add.
To remove a Data Output, select the Data Output from the list then click Remove.
To complete or edit a Data Output, select the Data Output from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Data Output. |
Description | A description of the Data Output. |
Item Definition | The data type of the Data Output. |
A Timer Boundary is triggered on a specific date and time or recurring interval. It changes the normal flow into an exception flow when triggered.
It can be interrupting or non-interrupting.
Fill in this field in the Attributes tab:
Boundary
Define whether the Boundary Event is an interrupting or non-interrupting event.
Define this attribute in the Timer tab of the Attributes panel:
Timer Event Definition
Define the timer conditions for timer events.
Refer to the ISO 8601 standard for date, time and duration format.
To set the Timer Type:
Type | Description |
---|---|
None | No timer type specified. |
Recurring date | Repeated on a specific day and time in a cycle — for example, “every Monday at 9am”. |
Fixed date | A specific date and time — for example, “31 December 2021”. |
After duration | The time from the moment the process reaches the event to the moment the trigger is fired — for example, “5 minutes”. |
An Error Boundary is triggered when an error occurs. It cancels the Activity it is attached to and the normal flow is interrupted.
An Error Boundary is an interrupting event.
Fill in this field in the Attributes tab:
Error Reference
The ID of the Error.
Click
Define this attribute in the Output tab of the Attributes panel:
Output
The Data Output sent by the element.
To add a Data Output, click Add.
To remove a Data Output, select the Data Output from the list then click Remove.
To complete or edit a Data Output, select the Data Output from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Data Output. |
Description | A description of the Data Output. |
Item Definition | The data type of the Data Output. |
If you haven’t already defined the Error Definition at a global process level, you can define it in the Error tab:
Error
Define the possible Errors that can occur in the process.
To add an Error, click Add.
To remove an Error, select the Error from the list then click Remove.
To complete or edit an Error, select the Error from the list and fill in these fields:
Fill in these fields:
Field | Description |
---|---|
Name | The name of the Error. |
Description | A description of the Error. |
Item Definition | The data type of the Error. |
Error code | Identifies the Error. A string value. |
An Escalation Boundary is triggered when a signal is received.
It can be interrupting or non-interrupting.
Fill in these fields in the Attributes tab:
Escalation Reference
The ID of the Escalation the event is referencing.
Boundary
Define whether the Boundary Event is an interrupting or non-interrupting event.
Define this attribute in the Output tab of the Attributes panel:
Output
The Data Output sent by the element.
To add a Data Output, click Add.
To remove a Data Output, select the Data Output from the list then click Remove.
To complete or edit a Data Output, select the Data Output from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Data Output. |
Description | A description of the Data Output. |
Item Definition | The data type of the Data Output. |
If you haven’t already defined the Escalation Definition at a global process level, you can define it in the Escalation tab:
Escalation
To add an Escalation, click Add.
To remove an Escalation, select the Escalation from the list then click Remove.
To complete or edit an Escalation, select the Escalation from the list and fill in these fields:
Fill in these fields:
Field | Description |
---|---|
Name | The name of the Escalation. |
Description | A description of the Escalation. |
Item Definition | The data type of the Escalation. |
Escalation code | Identifies the Escalation. A string value. |
A Signal Boundary is triggered when a signal is received. It changes the normal flow into an exception flow when triggered.
It can be interrupting or non-interrupting.
Fill in these fields in the Attributes tab:
Signal Reference
The ID of the Signal that’s broadcast.
Click
Boundary
Define whether the Boundary Event is an interrupting or non-interrupting event.
Define this attribute in the Output tab of the Attributes panel:
Output
The Data Output sent by the element.
To add a Data Output, click Add.
To remove a Data Output, select the Data Output from the list then click Remove.
To complete or edit a Data Output, select the Data Output from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Data Output. |
Description | A description of the Data Output. |
Item Definition | The data type of the Data Output. |
If you haven’t already defined the Signal Definition at a global process level, you can define it in the Signal tab:
Signal
To add a Signal, click Add.
To remove a Signal, select the Signal from the list then click Remove.
To complete or edit a Signal, select the Signal from the list and fill in these fields:
Attribute | Description |
---|---|
Name | The name of the Signal. |
Description | A description of the Signal. |
Item Definition | The data type of the Signal. |