Browsable Quality of Service Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: toy/qos/component/extracted
Source used for this grammar: Julien Baudry, Quality of Service, QoS.ecore, 2006/07/10

Summary

Syntax

Boolean ::=
	"true"
	"false"
Integer ::=
	integer
String ::=
	string
QoSComponent ::=
	[profile]::QoSProfile+ [operations]::Operation
QoSProfile ::=
	CompoundProfile
QoSProfile ::=
	SimpleProfile
QoSContraints ::=
	[invariant]::BooleanExpression [parallel_and_composition]::MappingExpression [parallel_or_composition]::MappingExpression [sequential_composition]::MappingExpression [values]::MappingExpression [statisticalAttribute]::StatisticalAttributekindKind+ [parameter]::Parameter [domain]::Domain
Operation ::=
	ε
CompoundProfile ::=
	[profileTransition]::ProfileTransition+ [simpleProfile]::SimpleProfile+
SimpleProfile ::=
	[compoundProfile]::CompoundProfile [use]::QoSStatement [provides]::QoSStatement
ProfileTransition ::=
	[operations]::Operation+ [from]::SimpleProfile [to]::SimpleProfile [compoundProfile]::CompoundProfile
QoSStatement ::=
	SingleQoSStatement
QoSStatement ::=
	CoumpoundQoSStatement
QoSStatement ::=
	[contraints]::QoSContraints+ [relation]::CoumpoundQoSStatement [parameter]::Parameter+
SingleQoSStatement ::=
	[contraint]::QoSContraint
CoumpoundQoSStatement ::=
	[statement]::QoSStatement
QoSContraint ::=
	[qualification]::QualificationKind
QualificationKind ::=
	[value]::String
QoSCharacteristic ::=
	QoSContraints
QoSCharacteristic ::=
	QualificationKind
QoSCharacteristic ::=
	[invariant]::BooleanExpression [parallel_and_composition]::MappingExpression [parallel_or_composition]::MappingExpression [sequential_composition]::MappingExpression [values]::MappingExpression [statisticalAttribute]::StatisticalAttributekindKind+ [parameter]::Parameter [domain]::Domain
BooleanExpression ::=
	[value]::String
MappingExpression ::=
	[value]::String
StatisticalAttributekindKind ::=
	ε
Parameter ::=
	ε
DataType ::=
	Domain
Domain ::=
	Numeric
Domain ::=
	Set
Domain ::=
	Enumeration
Domain ::=
	[direction]::DirectionKind
DirectionKind ::=
	[value]::String
Numeric ::=
	[direction]::DirectionKind
Set ::=
	[stringSet]::StringSet+
Enumeration ::=
	[direction]::DirectionKind
StringSet ::=
	[string]::String+

GrammarLabMaintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated in September 2015. []