8.4.3Error

An Error represents the content of an Error Event or the Fault of a failed Operation. An ItemDefinition is used to specify the structure of the Error. An Error is generated when there is a critical problem in the processing of an Activity or when the execution of an Operation failed.

Figure 8.18 – Error class diagram

The Error element inherits the attributes and model associations of BaseElement (see Table 8.5), through its relationship to RootElement. Table 8.41 presents the additional attributes and model associations of the Error element.

Business Process Model and Notation (BPMN), v2.0.2

79

Table 8.41 – Error attributes and model associations

Attribute Name

Description/Usage

 

 

structureRef : ItemDefinition [0..1]

An ItemDefinition is used to define the “payload” of the Error.

name : string

The descriptive name of the Error.

errorCode: string

For an End Event:

 

If the result is an Error, then the errorCode MUST be supplied

 

(if the processType attribute of the Process is set to execut-

 

able) This “throws” the Error.

 

For an Intermediate Event within normal flow:

 

If the trigger is an Error, then the errorCode MUST be entered

 

(if the processType attribute of the Process is set to execut-

 

able). This “throws” the Error.

 

For an Intermediate Event attached to the boundary of an Activity:

 

If the trigger is an Error, then the errorCode MAY be entered.

 

This Event “catches” the Error. If there is no errorCode, then

 

any error SHALL trigger the Event. If there is an errorCode, then

 

only an Error that matches the errorCode SHALL trigger the

 

Event.

8.4.4Escalation

An Escalation identifies a business situation that a Process might need to react to. An ItemDefinition is used to specify the structure of the Escalation.

Figure 8.19 – Escalation class diagram

80

Business Process Model and Notation (BPMN), v2.0.2

The Escalation element inherits the attributes and model associations of BaseElement (see Table 8.5), through its relationship to RootElement. Table 8.41 presents the additional model associations of the Error element.

Table 8.42 – Escalation attributes and model associations

Attribute Name

Description/Usage

 

 

structureRef : ItemDefinition [0..1]

An ItemDefinition is used to define the “payload” of the

 

Escalation.

name : string

The descriptive name of the Escalation.

escalationCode: string

For an End Event:

 

If the Result is an Escalation, then the escalationCode

 

MUST be supplied (if the processType attribute of the Process

 

is set to executable). This “throws” the Escalation.

 

For an Intermediate Event within normal flow:

 

If the trigger is an Escalation, then the escalationCode

 

MUST be entered (if the processType attribute of the Process is

 

set to executable). This “throws” the Escalation.

 

For an Intermediate Event attached to the boundary of an Activity:

 

If the trigger is an Escalation, then the escalationCode MAY

 

be entered. This Event “catches” the Escalation. If there is no

 

escalationCode, then any Escalation SHALL trigger the

 

Event. If there is an escalationCode, then only an Escala-

 

tion that matches the escalationCode SHALL trigger the

 

Event.

8.4.5Events

An Event is something that happens during the course of a Process. These Events affect the flow of the Process and usually have a cause or an impact. The term event is general enough to cover many things in a Process. The start of an Activity, the end of an Activity, the change of state of a document, a Message that arrives, etc., all could be considered Events. However, BPMN has restricted the use of Events to include only those types of Events that will affect the sequence or timing of Activities of a Process.

Business Process Model and Notation (BPMN), v2.0.2

81