Skip to main content

Start events define where a Process or Sub Process starts.

The process engine supports different types of start events:

The engine requires at least one start event to instantiate a process. There can be a maximum of one blank or timer start event per process definition. There can be multiple message or signal start events.

Asynchronous Instantiation

A start event may be declared as asynchronous with operaton:asyncBefore="true"

<startEvent id="startEvent" operaton:asyncBefore="true" />

This will ensure that the process engine creates a process instance when the process is instantiated, but the execution of the initial activities is not done synchronously. Instead, a job is created and asynchronously processed by the job executor. See the Asynchronous Continuations section of the User Guide for some background information.

Operaton Extensions

Attributes

operaton:asyncBefore, operaton:asyncAfter, operaton:exclusive, operaton:formHandlerClass, operaton:formKey, operaton:formRef, operaton:formRefBinding, operaton:formRefVersion, operaton:initiator, operaton:jobPriority

Extension Elements

operaton:failedJobRetryTimeCycle, operaton:formData, operaton:formProperty,

Constraints

The operaton:exclusive attribute is only evaluated if the attribute operaton:asyncBefore or operaton:asyncAfter is set to true

The attributes operaton:asyncBefore and operaton:initiator are only available for start events of a Process

Only one operaton:formData extension element is allowed

The attributes operaton:formHandlerClass and operaton:formKey are only available for the intital start event of a Process