...
A compensation handler connected through a boundary event can only perform a “black-box” compensation of the original Activity. This compensation is modeled with a specialized Compensation Activity, which is connected to the boundary event through an association. The Compensation Activity, which can be either a Task or a SubProcess, is marked to show that it is used for compensation only and is located outside the normal flow of the Process.
Compensation handler connected through Compensation Boundary Event.
Another way to model a compensation is using a compensation handler, which starts with a Start Event of an Event SubProcess that is contained within a Process or SubProcess. Just like any other Compensation Activities, a Compensation Event SubProcess is located outside the normal flow of a process. The Event SubProcess, which is marked with a dotted line boundary, has access to data that are part of the parent, which is a snapshot at the point in time when the parent has been completed. A Compensation Event SubProcess can recursively trigger a compensation for activities contained in its parent.
Example
Compensation defined by Event SubProcess.
Related elements
- BPMN Process
- SubProcesses
- Compensation Start Event
- Escalation Throwing Intermediate Event
- Compensation Boundary Event
- Association
Related diagrams
Related procedure

