Browsable KM3 1.1 Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/KM3/extracted
Source used for this grammar: Frédéric Jouault, KM3 1.1, KM3.ecore, 2004/11/01

Summary

Syntax

Boolean ::=
	"true"
	"false"
Integer ::=
	integer
String ::=
	string
LocatedElement ::=
	ModelElement
LocatedElement ::=
	Metamodel
ModelElement ::=
	Classifier
ModelElement ::=
	EnumLiteral
ModelElement ::=
	StructuralFeature
ModelElement ::=
	Package
Classifier ::=
	DataType
Classifier ::=
	Enumeration
Classifier ::=
	Class
Classifier ::=
	DataType
	Enumeration
	Class
DataType ::=
	ε
Enumeration ::=
	[literals]::EnumLiteral+
EnumLiteral ::=
	[name]::String [package]::Package
Class ::=
	[isAbstract]::Boolean [supertypes]::Class+ [structuralFeatures]::StructuralFeature+
StructuralFeature ::=
	Attribute
StructuralFeature ::=
	Reference
StructuralFeature ::=
	[lower]::Integer [upper]::Integer [isOrdered]::Boolean [isUnique]::Boolean [owner]::Class [type]::Classifier
Attribute ::=
	[lower]::Integer [upper]::Integer [isOrdered]::Boolean [isUnique]::Boolean [owner]::Class [type]::Classifier
Reference ::=
	[isContainer]::Boolean [opposite]::Reference
Package ::=
	[contents]::ModelElement+ [metamodel]::Metamodel
Metamodel ::=
	[contents]::Package+

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