Did you know that it is not allowed to send Message event from within your process to process instances of the same type?

The process engine is based on the BPMN 2.0 specification. Therefore the process engine handles message events the same way BPMN 2.0 specifies. This article explains how BPMN 2.0 specifies message events and how Blueriq implements this specification.

BPMN modeling elements

This section gives an overview of the BPMN modeling elements (source: BPMN 2.0 specification) that are used in the example in the next section.




BPMN modeling elements plotted on Blueriq concepts

The following table shows the BPMN modeling elements plotted on Blueriq concepts.

BPMNBlueriq
EventEvent
TaskTask
Collapsed Sub-ProcessProcess
Normal flowProcess line
Message flowMessage event
PoolCase
LanesRoles

BPMN example

The example shows a collaboration with two pools. The two pools communicate through message flows with each other.

Blueriq example processes

The collaboration is split in two process that still talk to each other via message events

Researcher

Subsidy party

BPMN message flow

BPMN defines a message flow as following (source: BPMN 2.0 specification):


Blueriq message event

So the BPMN specifies that message flows must not connect between two objects within the same pool. A pool is a process in Blueriq concepts and a message flow is a message event in Blueriq concepts.

So it is not allowed to send a message event from within a process to a process with the same type.

Known issues

Issue numberIssueExpected fix versionActual fix version

BQ-3171

It is possible to use the AQ_ThrowMessageEvent service in a task to send a message to a process with the same type. Studio doesn't give a validation error on thisR11-
BQ-3219Throwing a message event to a process with a started task that doesn't apply case locking leads to a double tasks in the database.10.910.9
BQ-3220User ends a task, without case locking, while other user has a task, without case locking, started. This leads to a double task in the database.10.910.9

Recommended reading

Message event

  • No labels