MONTEREY PHOENIX grammar
In this table A is an event and B and C are events in A
| description of pattern | grammar rule |
|---|---|
| Ordered sequence of events (B followed by C) | A: B C; |
| Alternative events (B or C) | A: ( B | C ); |
| Optional event (B or no event at all) | A: [ B ]; |
| Ordered sequence of zero or more events B | A: (* B *); |
| Ordered sequence of one or more events B | A: (+ B +); |
| Unordered set of events B and C (B and C may happen concurrently) | A: { B, C }; |
| Unordered set of zero or more events B | A: {* B *}; |
| Unordered set of one or more events B | A: {+ B +}; |
| description of pattern | grammar rule |
|---|---|
| name of model | SCHEMA |
| Identifies an actor | ROOT |
| event precedence across swimlanes | COORDINATE |
| if and only if | <-> |
| <!> | |
| a condition that each valid trace should satisfy | ENSURE |
| FOREACH | |
| BUILD | |
| DISJ | |
| MARK | |
| ONFAIL | |
| CHECK | |
| AFTER | |
| EXISTS | |
| MAP | |
| CLEAR | |
| SHOW | |
| message box that prints text | SAY("hello world") |
Common pattern: branching logic in swimlane
ROOT Driver: enters_car (starts_car | exits_car);
starts_car: move_forward
stops_car
exits_car;
Common pattern: dependency across swimlanes
COORDINATE $a: turn_steering_wheel_right FROM driver, $b: right FROM front_tires DO ADD $a PRECEDES $b; OD;
Common pattern: shared events
Driver, Car SHARE ALL move_forward,
turn_left,
turn_right;
No comments:
Post a Comment