
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/SimulinkStateFlow/extracted
Source used for this grammar: Youssef Srour, Simulink/Stateflow 1.0, SimulinkStateFlow.ecore, 2006/07/10
Simulink, System, Connector, Line, BranchPoint, Port, Block, BlockRef, Primitive, OutPut, TriggerPort, EnablePort, Reference, Annotation, Parameter, Units, TriggerEnum, EnableEnum, String, Integer), 0 root (—), 1 top (Connector), 0 bottom (—).[subSystem] 2, [name] 3, [simulink], [blocks], [lines] 2, [block] 3, [system] 2, [units], [description], [priority], [natagme], [blockType], [parameters], [annotations], [blockRefs], [deadLine], [period], [executionTime], [number], [triggerType], [statesWhenEnabling], [sourceBlock], [sourceType], [text], [value], [alpha] 3, [beta] 3.Simulink ::=
[subSystem]::SystemSystem ::=
[name]::String [simulink]::Simulink [blocks]::Block [lines]::Line [subSystem]::SystemConnector ::= BranchPoint
Connector ::= Port
Connector ::= BranchPoint Port
Line ::= [name]::String [block]::Block [system]::System
BranchPoint ::= ε
Port ::= OutPut
Port ::= TriggerPort
Port ::= EnablePort
Port ::= [units]::Units
Block ::= Primitive
Block ::= Reference
Block ::= [description]::String [name]::String [priority]::String [natagme]::String [blockType]::String [lines]::Line [parameters]::Parameter [annotations]::Annotation [blockRefs]::BlockRef [system]::System
BlockRef ::= ε
Primitive ::= [deadLine]::String [period]::String [executionTime]::String
OutPut ::= [number]::Integer
TriggerPort ::= [triggerType]::TriggerEnum
EnablePort ::= [statesWhenEnabling]::EnableEnum
Reference ::= [sourceBlock]::String [sourceType]::String
Annotation ::= [text]::String [block]::Block
Parameter ::= [value]::String [block]::Block
Units ::= [alpha]::ε [beta]::ε
TriggerEnum ::= [alpha]::ε [beta]::ε
EnableEnum ::= [alpha]::ε [beta]::ε
String ::= string
Integer ::= integer