
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: dsl/architecture/sysml/extracted
Source used for this grammar: Albin Jossic, SysML.ecore, 2006/06/06
Entity, NamedElement, Dependency, Conform, Package, View, Class, Viewpoint, Comment, Rationale, Problem, Block, ConstraintBlock, Property, BlockProperty, ConstraintProperty, DistributedProperty, DataType, ValueType, Unit, Dimension, ConnectorEnd, NestedConnectorEnd, Port, FlowPort, FlowProperty, Interface, FlowSpecification, FlowDirection, Classifier, InformationItem, InformationFlow, ItemFlow, Parameter, ActivityEdge, ParameterSet, Optional, Rate, InstanceSpecification, Continous, Discrete, Probability, ValueSpecification, Behavior, Operation, ControlOperation, ObjectNode, NoBuffer, Overwrite, Abstraction, Allocate, Allocated, ActivityPartition, AllocateActivityPartition, Trace, DeriveReqt, Verify, Copy, Realization, Satisfy, Requirement, TestCase, RequirementRelated, BasicInterval, Interval, Uniform, Normal, String, Integer, Boolean), 0 root (—), 1 top (Entity), 0 bottom (—).[target] 2, [source] 2, [conformsTo], [name], [stakeholders], [purpose], [concerns], [languages], [methods], [content] 3, [isEncapsulated] 2, [unit] 3, [dimension] 3, [propertyPath], [isBehavior], [isAtomic], [direction] 2, [isConjugated], [ownedFlowProperty], [in], [out], [inout], [represented], [conveyed], [itemProperty], [instance] 3, [probability], [allocatedFrom], [allocatedTo], [text], [id], [derived], [derivedFrom], [satisfiedBy], [refinedBy], [tracedTo], [verifiedBy], [master], [verifies], [tracedFrom], [satisfies], [refines], [min] 3, [max] 3, [mean], [standardDeviation].Entity ::= NamedElement
Entity ::= Comment
Entity ::= Property
Entity ::= DataType
Entity ::= ConnectorEnd
Entity ::= Interface
Entity ::= Classifier
Entity ::= InformationFlow
Entity ::= Parameter
Entity ::= ActivityEdge
Entity ::= ParameterSet
Entity ::= InstanceSpecification
Entity ::= ValueSpecification
Entity ::= Behavior
Entity ::= Operation
Entity ::= ObjectNode
Entity ::= Abstraction
Entity ::= ActivityPartition
Entity ::= Trace
Entity ::= Realization
NamedElement ::= Dependency
NamedElement ::= Package
NamedElement ::= Allocated
NamedElement ::= RequirementRelated
Dependency ::= Conform
Conform ::= [target]::Viewpoint [source]::View
Package ::= View
View ::= [conformsTo]::Viewpoint
Class ::= Viewpoint
Class ::= Block
Class ::= Requirement
Class ::= [name]::String
Viewpoint ::= [stakeholders]::String [purpose]::String [concerns]::String [languages]::String [methods]::String
Comment ::= Rationale
Comment ::= Problem
Comment ::= [content]::String
Rationale ::= [content]::String
Problem ::= [content]::String
Block ::= ConstraintBlock
Block ::= [isEncapsulated]::Boolean
ConstraintBlock ::= [isEncapsulated]::Boolean
Property ::= BlockProperty
Property ::= Port
Property ::= FlowProperty
Property ::= BlockProperty Port FlowProperty
BlockProperty ::= ConstraintProperty
BlockProperty ::= DistributedProperty
BlockProperty ::= ConstraintProperty DistributedProperty
ConstraintProperty ::= ε
DistributedProperty ::= BasicInterval
DistributedProperty ::= Normal
DistributedProperty ::= BasicInterval Normal
DataType ::= ValueType
ValueType ::= Unit
ValueType ::= Dimension
ValueType ::= [unit]::Unit [dimension]::Dimension
Unit ::= [unit]::Unit [dimension]::Dimension
Dimension ::= [unit]::Unit [dimension]::Dimension
ConnectorEnd ::= NestedConnectorEnd
NestedConnectorEnd ::= [propertyPath]::Property
Port ::= FlowPort
Port ::= [isBehavior]::Boolean
FlowPort ::= [isAtomic]::Boolean [direction]::FlowDirection [isConjugated]::Boolean
FlowProperty ::= [direction]::FlowDirection
Interface ::= FlowSpecification
FlowSpecification ::=
[ownedFlowProperty]::FlowPropertyFlowDirection ::= [in]::ε [out]::ε [inout]::ε
Classifier ::= Class
Classifier ::= InformationItem
Classifier ::= Class InformationItem
InformationItem ::=
[represented]::ClassifierInformationFlow ::= ItemFlow
InformationFlow ::= [conveyed]::Classifier [source]::NamedElement [target]::NamedElement
ItemFlow ::= [itemProperty]::BlockProperty
Parameter ::= Optional
Parameter ::= Rate
ActivityEdge ::= Probability
ActivityEdge ::= Rate
ActivityEdge ::= ε
ParameterSet ::= Probability
ParameterSet ::= ε
Optional ::= ε
Rate ::= Continous
Rate ::= Discrete
Rate ::= [instance]::InstanceSpecification
InstanceSpecification ::= ε
Continous ::= [instance]::InstanceSpecification
Discrete ::= [instance]::InstanceSpecification
Probability ::= [probability]::ValueSpecification
ValueSpecification ::= ε
Behavior ::= ControlOperation
Behavior ::= TestCase
Behavior ::= ε
Operation ::= ControlOperation
Operation ::= TestCase
Operation ::= ε
ControlOperation ::= ε
ObjectNode ::= NoBuffer
ObjectNode ::= Overwrite
ObjectNode ::= NoBuffer Overwrite
NoBuffer ::= ε
Overwrite ::= ε
Abstraction ::= Allocate
Allocate ::= ε
Allocated ::= [allocatedFrom]::NamedElement [allocatedTo]::NamedElement
ActivityPartition ::= AllocateActivityPartition
AllocateActivityPartition ::= ε
Trace ::= DeriveReqt
Trace ::= Verify
Trace ::= Copy
Trace ::= DeriveReqt Verify Copy
DeriveReqt ::= ε
Verify ::= ε
Copy ::= ε
Realization ::= Satisfy
Satisfy ::= ε
Requirement ::= [text]::String [id]::String [derived]::Requirement [derivedFrom]::Requirement [satisfiedBy]::NamedElement [refinedBy]::NamedElement [tracedTo]::NamedElement [verifiedBy]::TestCase [master]::Requirement
TestCase ::= ε
RequirementRelated ::= [verifies]::Requirement [tracedFrom]::Requirement [satisfies]::Requirement [refines]::Requirement
BasicInterval ::= Interval
BasicInterval ::= Uniform
BasicInterval ::= [min]::Integer [max]::Integer
Interval ::= [min]::Integer [max]::Integer
Uniform ::= [min]::Integer [max]::Integer
Normal ::= [mean]::Integer [standardDeviation]::Integer
String ::= string
Integer ::= integer
Boolean ::= "true" "false"