Real-life processes are often limited by time and exception paths are taken when "Time's Up". The rich notation of BPMN provides for this. The BPMN 1.1 specification provides an example from Voting operations.
The normal sequence flow and error flow from "Moderate E-mail Discussion" in this case are merged into the subsequent activities but it is easy to imagine circumstances where the subsequent activities were not identical.
Modelling this in BPMN using Intalio immediately presents a problem because error flows are not permitted to go anywhere beyond the error handler activity which may be a Sub-Process. (This is a compliance issue in Intalio v BPMN 1.1 specification ).
A further issue is that, in Intalio, the timer itself does not interrupt the activity within the sub-process. That is when the timer event is triggered, the error flow is executed and the activities within the subprocess continue.
This is counter-intuitive and inconsistent with the implementation of the intermediate error event so is probably a bug. The BPMN 1.1 specification (10.2.2) only requires the error flow to be started, there is no clear direction as to the operation of the normal sequence flow. As a workaround in Intalio, to interrupt the flow within a subprocess by a timer, a fault has to be raised in the error-flow. To avoid that fault stopping the whole process, it has to be trapped and handled within the process (at an outer scope or subprocess boundary). How do other BPMN products treat the timer?
An explicit example of this is shown below. If the timer expires for the sub-process timed exec then execution is halted by the error end event in the error flow handler. This error end event is processed by the error handler activity fault in the outer subprocess.