next up previous
Next: Action Up: Behaviour Previous: State

Transition

Transitions are process reactions in response to stimulis. Transition stimuli are combinations of the following three elements : enabledness of some untimed guard (provided expression), enabledness of some timed guard (when constraint) and the presence of some signal in the input buffer of the process instance (input signal). Transition reactions are classical programs built over elementary actions using sequential composition, and respectively conditional (if-then-else) and loop (while) control-flow statements. Elementary actions are discussed below. A transition must end either with a nextstate action (which means passing control to that state), either with a stop action (which means the destruction of the instance). In addition, each transition has a deadline eager, delayable or lazy denoting the priority of the transition with respect to the progress of time.


xxxxxxxxxxxxxxxxxxtransition ::=  

$[$ deadline $\{$ eager $\vert$ delayable $\vert$ lazy $\}$ ; $]$
$[$ provided expression ; $]$
$[$ when constraint ; $]$
$[$ input signal-id ( $[$ expression { , expression }$^*$ $]$ ) ; $]$
{ statement }$^*$
terminator

statement ::=
action $\vert$
if expression then { statement }$^*$ $[$ else { statement }$^*$ $]$ endif $\vert$
while expression do { statement }$^*$ endwhile

terminator ::=
nextstate state-id ; $\vert$
stop ;


next up previous
Next: Action Up: Behaviour Previous: State