Page 176 -
P. 176

166                                              M. Adams and N. Russell
                           TimeOut

                           A timeout event occurs when a work item has an enabled timer and the deadline set
                           for that timer is reached. In this case, the workflow engine notifies the service of the
                           timeout event, and passes to the service a reference to the work item and each of the
                           other work items that were running in parallel with it. Therefore, separate timeout
                           rules may be defined (or indeed not defined) for each of the work items affected by
                           the timeout, including the actual timed out work item itself. Thus, separate actions
                           may be taken for each affected work item individually.



                           Externally Triggered Types

                           Externally triggered exceptions occur, not through the case’s data parameters or
                           via an engine initiated event, but rather because of the occurrence of an event in
                           the external environment, outside of the process instance, that has an effect on the
                           continuing execution of the process. Thus, these events are triggered by a user or
                           administrator. Depending on the actual event and the context of the case or work
                           item, a particular exlet will be invoked. There are two types of external exceptions:
                           CaseExternalTrigger (for case-level events) and ItemExternalTrigger (for item-level
                           events).



                           ItemAbort

                           An ItemAbort event occurs when a work item being handled by an external pro-
                           gram (as opposed to a human user) reports that the program has aborted before
                           completion.


                           ResourceUnavailable

                           This event is triggered by the Resource Service (cf. Chap. 10) when an attempt has
                           been made to allocate a work item to a resource and the resource reports that it is
                           unable to accept the allocation or the allocation cannot otherwise proceed.



                           ConstraintViolation
                           This event occurs when a data constraint has been violated for a work item during
                           its execution (as opposed to pre- or post-execution).
                              Note that the ItemAbort and ConstraintViolation exception types are supported
                           by the framework, but are not yet operational, although it is envisaged that they will
                           be incorporated into YAWL 2.1.
   171   172   173   174   175   176   177   178   179   180   181