Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: dsl/business/process/extracted
Source used for this grammar: Julien Baudry, BusinessProcessModel.ecore
, 2006/07/20
Namespace
, Task
, DataSet
, Parameter
, DataElement
, ModelElement
, Flow
, DataFlow
, ControlFlow
, ControlPoint
, Input
, Output
, OutputSet
, InputSet
, Exception
, SimpleTask
, CoumpoundTask
, MutliTask
, InvokerTask
, TerminatorTask
, ApplicationTask
, Decision
, Clock
, SendCommunication
, ReceiveCommunication
, BusinessProcess
, Boolean
, Integer
, String
), 0 root (—), 6 top (Namespace
, Parameter
, ModelElement
, Boolean
, Integer
, String
), 0 bottom (—).[sink]
2, [source]
, [containsOutput]
, [containsInput]
, [containsTask]
2, [containsFlow]
2, [realizes]
2, [invokes]
, [terminates]
.Namespace ::= Task
Namespace ::= DataSet
Task ::= SimpleTask
Task ::= CoumpoundTask
DataSet ::= OutputSet
DataSet ::= InputSet
Parameter ::= DataElement
DataElement ::= Input
DataElement ::= Output
ModelElement ::= Flow
ModelElement ::= ControlPoint
Flow ::= DataFlow
Flow ::= ControlFlow
Flow ::= DataFlow ControlFlow
DataFlow ::= ε
ControlFlow ::= ε
ControlPoint ::=
[sink]::ControlFlow
Input ::= [sink]::DataFlow [source]::DataFlow
Output ::= Exception
OutputSet ::=
[containsOutput]::Output
InputSet ::=
[containsInput]::Input
Exception ::= ε
SimpleTask ::= InvokerTask
SimpleTask ::= TerminatorTask
SimpleTask ::= ApplicationTask
SimpleTask ::= InvokerTask TerminatorTask ApplicationTask
CoumpoundTask ::= MutliTask
CoumpoundTask ::= [containsTask]::Task[containsFlow]::Flow [realizes]::BusinessProcess
MutliTask ::= [containsTask]::Task[containsFlow]::Flow [realizes]::BusinessProcess
InvokerTask ::=
[invokes]::Task
TerminatorTask ::=
[terminates]::Task
ApplicationTask ::= Decision
ApplicationTask ::= Clock
ApplicationTask ::= SendCommunication
ApplicationTask ::= ReceiveCommunication
ApplicationTask ::= BusinessProcess
ApplicationTask ::= Decision Clock SendCommunication ReceiveCommunication BusinessProcess
Decision ::= ε
Clock ::= ε
SendCommunication ::= ε
ReceiveCommunication ::= ε
BusinessProcess ::= ε
Boolean ::= "true" "false"
Integer ::= integer
String ::= string