Modeling guidelines for events
![*](chapterTOC_bullet.png)
For start events, the
Event type attribute type may have only one of the following values:
Message,
Timer,
Rule,
Link, or
Multiple.
![*](chapterTOC_bullet.png)
For end events, the
Event type attribute type may have only one of the following values:
Message,
Exception,
Cancel,
Compensation,
Rule,
Link,
Multiple, or
Terminate.
![*](chapterTOC_bullet.png)
For intermediate events, the
Event type attribute type may have only one of the following values:
Message,
Timer,
Exception,
Cancel,
Compensation,
Rule,
Link, and
Multiple.
![*](chapterTOC_bullet.png)
Depending on the event type set, additional information must be specified in appropriate attributes.
![*](chapterTOC_bullet.png)
A start event may have multiple outgoing sequence flow connections. No value must be set for the
Condition attribute of these connections.
![*](chapterTOC_bullet.png)
Intermediate events that indicate an exception or a compensation should be placed at the border of the function.
![*](chapterTOC_bullet.png)
If an intermediate event is placed at the border of a function, a value other than
Link must be specified.
![*](chapterTOC_bullet.png)
The
Multiple,
Rule, and
Cancel values must not be set for intermediate events that are located within a normal sequence flow of a process.
![*](chapterTOC_bullet.png)
The value
Cancel must not be set if
![*](chapterTOC_bullet.png)
the intermediate event is placed at the border of a function and the
Transaction attribute of the function is not enabled, or
![*](chapterTOC_bullet.png)
the event is not part of a process that describes a transaction.
![*](chapterTOC_bullet.png)
If an intermediate event is placed at the border of a function, it must not be the target object of a sequence flow connection.
![*](chapterTOC_bullet.png)
If an intermediate event is located within the normal sequence flow of a process (that is, it is not placed at the border of a function), it may have exactly one incoming sequence flow connection. For the
Event type attribute of the event, it is possible to specify no value or one of the following values:
Message,
Timer,
Exception,
Link,
Compensation.
![*](chapterTOC_bullet.png)
The value
Link may be set for intermediate events in a normal sequence flow only if the source object is a gateway whose
Gateway type attribute has the value
XOR (event-based).
![*](chapterTOC_bullet.png)
Each intermediate event must have exactly one outgoing sequence flow connection.
![*](chapterTOC_bullet.png)
An intermediate event whose
Event type attribute has the value
Message may have an incoming message flow (incoming connection of the
is received by type).
![*](chapterTOC_bullet.png)
An intermediate event must not have an outgoing message flow (outgoing connection of the
sends type).