Signal events can be either catching or throwing. A throwing signal event will emit a signal when it is reached in a process instance that will be picked up by any catching signal event with a matching signal name.
The id
of a signal will match against the signalRef
of a catching or throwing event.
Signal events are graphically represented by a triangle icon inside different shapes that differentiate between the event types. A solid triangle represents a throwing event, whilst a hollow triangle represents a catching event.
The XML representation of a signal is the following:
<bpmn2:signal id="Signal_10meg5t" name="notification" />
The following are signal events:
Signal intermediate throwing events are events that emit a signal when they are reached in the process flow. The signal that is emitted is then caught by any catching signal events with a name matching the signal that was thrown.
When used in the Modeling Application, a previously used Signal
can be selected from the dropdown in its properties, or a new one created using the +
symbol. Signals can be restricted to the process instance they are thrown in, or be global in scope. The scope of a global signal is restricted to the application they are used in.
Signal intermediate throwing events are graphically represented by two thin concentric circles with a solid triangle icon inside.
The XML representation of signal intermediate throwing events is:
<bpmn2:intermediateThrowEvent id="IntermediateThrowEvent1">
<bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
<bpmn2:signalEventDefinition signalRef="Signal_1jiw9tp" />
</bpmn2:intermediateThrowEvent>
The XML representation of a signal with a global scope is:
<bpmn2:signal id="Signal_0hnsd2r" name="Signal_0hnsd2r" />
The XML representation of a signal with a process instance scope is:
<bpmn2:signal id="Signal_0hnsd2r" name="Signal_0hnsd2r" activiti:scope="processInstance" />
Signal intermediate catching events cause the process flow to wait until the signal named in the signalRef
property is received before it proceeds.
When used in the Modeling Application, a previously used Signal
can be selected from the dropdown in its properties, or a new one created using the +
symbol. Signals can be restricted to the process instance they are thrown in, or be global in scope. The scope of a global signal is restricted to the application they are used in.
Signal intermediate catching events are graphically represented by two thin concentric circles with a hollow triangle icon inside.
The XML representation of signal intermediate catching events is:
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent2">
<bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
<bpmn2:signalEventDefinition signalRef="Signal_0hnsd2r" />
</bpmn2:intermediateCatchEvent>
© 2023 Alfresco Software, Inc. All Rights Reserved.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.