Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: uml/fragment/extracted
Source used for this grammar: Julien Baudry, UML Metamodel Fragment integrating statecharts, generalization of classes, and stereotypes, UML_metamodel_fragment.ecore
, 2006/07/20
Class
, Generalization
, Dependency
, Stereotype
, StateMachine
, State
, CompositeState
, SimpleState
, FinalState
, StateVertex
, PseudoState
, Transition
, Event
, Boolean
, Integer
, String
), 0 root (—), 2 top (Boolean
, Integer
), 0 bottom (—).[parent]
, [child]
, [dependency]
, [supplier]
, [client]
, [stereotype]
, [baseClass]
, [extendedElement]
, [context]
, [top]
, [stateMachine]
3, [internal]
3, [subvertex]
, [compositeState]
2, [trigger]
, [source]
, [target]
.Class ::= [parent]::Generalization [child]::Generalization [dependency]::Dependency
Generalization ::= ε
Dependency ::= [supplier]::StateMachine [client]::Class [stereotype]::Stereotype
Stereotype ::= [baseClass]::String [extendedElement]::Dependency
StateMachine ::= [context]::Class [top]::State
State ::= CompositeState
State ::= SimpleState
State ::= FinalState
State ::= [stateMachine]::StateMachine [internal]::Transition
CompositeState ::= [subvertex]::StateVertex
SimpleState ::= [stateMachine]::StateMachine [internal]::Transition
FinalState ::= [stateMachine]::StateMachine [internal]::Transition
StateVertex ::= State
StateVertex ::= PseudoState
StateVertex ::= [compositeState]::CompositeState
PseudoState ::= [compositeState]::CompositeState
Transition ::= [trigger]::Event [source]::StateVertex [target]::StateVertex
Event ::= ε
Boolean ::= "true" "false"
Integer ::= integer
String ::= string