Intermediate Events

An Intermediate Event represents a point in the process where something occurs after a process starts and before it ends. It affects the flow of the process.

It evaluates conditions and situations that cause events or fulfills conditions that start another process.

Intermediate events can be catching or throwing events.

A catching event waits for an event to occur and reacts to it. A throwing event triggers the event based on the type of event.

An Intermediate Event can have multiple incoming and outgoing Sequence Flows.

When adding an Intermediate Event to your diagram, make sure that:

  • It has at least one incoming Sequence Flow.

  • It has at least one outgoing Sequence Flow.

Intermediate Events appear as circles with a double edge. The marker changes according to the type of Intermediate Event. Catching event markers are white, throwing event markers are black.

Intermediate Event symbols with Event Markers

Intermediate Event

An Intermediate Event is a throwing event.

Use it to indicate that something has changed in the process.

a basic Intermediate Event symbol

Message Intermediate Catch Event

Use a Message Intermediate Catch Event to receive a message. This event pauses the process until it receives a specific message or changes the process flow when the messaged isn’t received.

a Message Intermediate Catch Event symbol

Message Intermediate Catch Event attributes

Fill in this field in the Attributes tab:

  • Message Reference

    The ID of the Message that is sent or received by the Task.

    Click to view the list of message IDs and select an ID.

 

Define this attribute in the Output 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.

Message Intermediate Throw Event

Use a message intermediate throw event to send a message.

a Message Intermediate Throw Event symbol

Message Intermediate Throw Event attributes

Fill in this field in the Attributes tab:

  • Message Reference

    The ID of the Message that is sent or received by the Task.

    Click to view the list of message IDs and select an ID.

 

Define this attribute in the Input tab of the Attributes panel:

  • Input

    The Data Input received by the element.

    • To add a Data Input, click Add.

    • To remove a Data Input, select the Data Input from the list then click Remove.

    • To complete or edit a Data Input, select the Data Input from the list and fill in these fields:

      Attribute Description
      Name The name of the input.
      Description A description of the input.
      Item Definition The data type of the input.
      Default value The default value of the input.

 

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.

Timer Intermediate Catch Event

A Timer Intermediate Catch Event acts like a stopwatch. When the process arrives at this event, a timer starts and the process is paused for a specified time before starting up again.

a Timer Intermediate Catch Event symbol

Timer Intermediate Catch Event attributes

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:

    • Click and select 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”.

Escalation Intermediate Throw Event

When a process arrives at an Escalation Intermediate Throw Event this triggers an escalation. The escalation can be caught by a Boundary Event or Subprocess with the same Escalation.

an Escalation Intermediate Throw Event symbol

Escalation Intermediate Throw Event attributes

Fill in this field in the Attributes tab:

  • Escalation Reference

    The ID of the Escalation the event is referencing.

 

Define this attribute in the Input tab of the Attributes panel:

  • Input

    The Data Input received by the element.

    • To add a Data Input, click Add.

    • To remove a Data Input, select the Data Input from the list then click Remove.

    • To complete or edit a Data Input, select the Data Input from the list and fill in these fields:

      Attribute Description
      Name The name of the input.
      Description A description of the input.
      Item Definition The data type of the input.
      Default value The default value of the input.

 

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.

Signal Intermediate Catch Event

Use a Signal Intermediate Catch Event to receive a specific signal. This event pauses the process flow until it receives a signal.

a Signal Intermediate Catch Event symbol

Signal Intermediate Catch Event attributes

Fill in this field in the Attributes tab:

  • Signal Reference

    The ID of the Signal that’s broadcast.

    Click to select a Signal ID.

 

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.

Signal Intermediate Throw Event

Use a Signal Intermediate Throw Event to send a specific signal.

a Signal Intermediate Throw Event symbol

Signal Intermediate Throw Event attributes

Fill in this field in the Attributes tab:

  • Signal Reference

    The ID of the Signal that’s broadcast.

    Click to select a Signal ID.

 

Define this attribute in the Input tab of the Attributes panel:

  • Input

    The Data Input received by the element.

    • To add a Data Input, click Add.

    • To remove a Data Input, select the Data Input from the list then click Remove.

    • To complete or edit a Data Input, select the Data Input from the list and fill in these fields:

      Attribute Description
      Name The name of the input.
      Description A description of the input.
      Item Definition The data type of the input.
      Default value The default value of the input.

 

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.

Conditional Intermediate Catch Event

Use a Conditional Intermediate Catch Event to trigger an event when a given condition evaluates to true. It pauses the process flow until the condition is fulfilled.

a Conditional Intermediate Catch Event symbol

Conditional Intermediate Catch Event attributes

Fill in this field in the Attributes tab:

  • 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 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.

 

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.