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]::Relation
Relation ::= ComponentRelation
Relation ::=
[ports]::Port
Director ::= [ca_container]::CompositeActor
Parameter ::= [pa_container]::Entity [dataType]::EDataType
ComponentPort ::=
[po_container]::Entity [links]::Relation
ComponentRelation ::= [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