Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: ontoware/csm/extracted
Source used for this grammar: Youssef Srour, CSM.ecore
, 2006/07/28
Source used for this grammar: V. Cortellessa, How far are we from the definition of a common software performance ontology?,
Source used for this grammar: D. B. Petriu, M. Woodside, A Metamodel for Generating Performance Models from UML Designs, in UML’04, LNCS 3273, pp.41–53, 2004
CSM
, GeneralResource
, Step
, Scenarion
, Start
, End
, ResourceAcquire
, ResourceRelease
, Workload
, Component
, ProcessingResource
, ExternalService
, ActiveResource
, PassiveResource
, Message
, PathConnection
, Join
, Fork
, Merge
, Branch
, Seqence
, String
, Boolean
, Integer
), 0 root (—), 4 top (CSM
, String
, Boolean
, Integer
), 0 bottom (—).[step]
5, [generalResource]
3, [scenarion]
, [resourceAcquire]
, [resourceRelease]
, [postPath]
2, [prePath]
2, [activeResource]
2, [root]
, [workload]
, [start]
, [message]
6, [post]
6, [pre]
6.CSM ::= [step]::Step[generalResource]::GeneralResource [scenarion]::Scenarion
GeneralResource ::= ActiveResource
GeneralResource ::= PassiveResource
GeneralResource ::= [resourceAcquire]::ResourceAcquire[resourceRelease]::ResourceRelease
Step ::= Start
Step ::= End
Step ::= ResourceAcquire
Step ::= ResourceRelease
Step ::= [postPath]::PathConnection [prePath]::PathConnection [activeResource]::ActiveResource
Scenarion ::= Step
Scenarion ::= [step]::Step[root]::Start
Start ::= [workload]::Workload
End ::= [postPath]::PathConnection [prePath]::PathConnection [activeResource]::ActiveResource
ResourceAcquire ::= [generalResource]::GeneralResource
ResourceRelease ::= [generalResource]::GeneralResource
Workload ::= [start]::Start
Component ::= ε
ProcessingResource ::=
[step]::Step
ExternalService ::=
[step]::Step
ActiveResource ::= ProcessingResource
ActiveResource ::= ExternalService
ActiveResource ::=
[step]::Step
PassiveResource ::= Component
Message ::= ε
PathConnection ::= Join
PathConnection ::= Fork
PathConnection ::= Merge
PathConnection ::= Branch
PathConnection ::= Seqence
PathConnection ::= [message]::Message [post]::Step[pre]::Step
Join ::= [message]::Message [post]::Step[pre]::Step
Fork ::= [message]::Message [post]::Step[pre]::Step
Merge ::= [message]::Message [post]::Step[pre]::Step
Branch ::= [message]::Message [post]::Step[pre]::Step
Seqence ::= [message]::Message [post]::Step[pre]::Step
String ::= string
Boolean ::= "true" "false"
Integer ::= integer