
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/PtolemyII/extracted
Source used for this grammar: Hugo Brunelière, PtolemyII 1.0, PtolemyII.ecore, 2005/08/03
Integer, String, Boolean, EDataType, NamedObject, Attribute, Entity, Port, Relation, Director, Parameter, ComponentPort, ComponentRelation, ComponentEntity, AtomicActor, CompositeEntity, WorkSpace, CompositeActor), 0 root (—), 3 top (Integer, Boolean, NamedObject), 0 bottom (—).[value] 2, [name], [att_container], [attributes], [parameters], [ports] 2, [po_container] 2, [links] 2, [ca_container], [pa_container], [dataType], [re_container], [ce_container] 2, [containees] 2, [relations] 2, [directors].Integer ::= integer
String ::= string
Boolean ::= "true" "false"
EDataType ::= [value]::String
NamedObject ::= Attribute
NamedObject ::= Entity
NamedObject ::= Port
NamedObject ::= Relation
NamedObject ::= Director
NamedObject ::= [name]::String
Attribute ::= Parameter
Attribute ::= ComponentEntity
Attribute ::= [att_container]::Entity [value]::String
Entity ::= [attributes]::Attribute [parameters]::Parameter [ports]::Port
Port ::= ComponentPort
Port ::=
[po_container]::Entity [links]::RelationRelation ::= ComponentRelation
Relation ::=
[ports]::PortDirector ::= [ca_container]::CompositeActor
Parameter ::= [pa_container]::Entity [dataType]::EDataType
ComponentPort ::=
[po_container]::Entity [links]::RelationComponentRelation ::= [re_container]::CompositeEntity
ComponentEntity ::= AtomicActor
ComponentEntity ::= CompositeEntity
ComponentEntity ::= [ce_container]::CompositeEntity
AtomicActor ::= [ce_container]::CompositeEntity
CompositeEntity ::= WorkSpace
CompositeEntity ::= CompositeActor
CompositeEntity ::= [containees]::ComponentEntity [relations]::ComponentRelation
WorkSpace ::= [containees]::ComponentEntity [relations]::ComponentRelation
CompositeActor ::= [directors]::Director