/
grammar.bgf
2 lines (2 loc) · 8.76 KB
/
grammar.bgf
1
2
<?xml version="1.0" encoding="UTF-8"?>
<bgf:grammar xmlns:bgf="http://planet-sl.org/bgf" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"><bgf:production><nonterminal>VisibilityKind</nonterminal><bgf:expression><choice><bgf:expression><selectable><selector>vk_public_vis</selector><bgf:expression><epsilon/></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>vk_private_vis</selector><bgf:expression><epsilon/></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>vk_protected_vis</selector><bgf:expression><epsilon/></bgf:expression></selectable></bgf:expression></choice></bgf:expression></bgf:production><bgf:production><nonterminal>BooleanExpression</nonterminal><bgf:expression><selectable><selector>expresssion</selector><bgf:expression><nonterminal>String</nonterminal></bgf:expression></selectable></bgf:expression></bgf:production><bgf:production><nonterminal>ModelElement</nonterminal><bgf:expression><nonterminal>Dependency</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ModelElement</nonterminal><bgf:expression><nonterminal>Constraint</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ModelElement</nonterminal><bgf:expression><nonterminal>Feature</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ModelElement</nonterminal><bgf:expression><nonterminal>NameSpace</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ModelElement</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>name</selector><bgf:expression><nonterminal>String</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>visibility</selector><bgf:expression><nonterminal>VisibilityKind</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>contraints</selector><bgf:expression><nonterminal>Constraint</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>clientDependencies</selector><bgf:expression><nonterminal>Dependency</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>supplierDependencies</selector><bgf:expression><nonterminal>Dependency</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression><bgf:expression><selectable><selector>namespace</selector><bgf:expression><nonterminal>NameSpace</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>importers</selector><bgf:expression><nonterminal>Package</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Dependency</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>kind</selector><bgf:expression><nonterminal>String</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>clients</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>suppliers</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Constraint</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>body</selector><bgf:expression><nonterminal>BooleanExpression</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>constrainedElements</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Feature</nonterminal><bgf:expression><nonterminal>StructuralFeature</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Feature</nonterminal><bgf:expression><selectable><selector>owner</selector><bgf:expression><nonterminal>Classifier</nonterminal></bgf:expression></selectable></bgf:expression></bgf:production><bgf:production><nonterminal>StructuralFeature</nonterminal><bgf:expression><nonterminal>Attribute</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>StructuralFeature</nonterminal><bgf:expression><selectable><selector>type</selector><bgf:expression><nonterminal>Classifier</nonterminal></bgf:expression></selectable></bgf:expression></bgf:production><bgf:production><nonterminal>Attribute</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>type</selector><bgf:expression><nonterminal>Classifier</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>NameSpace</nonterminal><bgf:expression><nonterminal>Classifier</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>NameSpace</nonterminal><bgf:expression><nonterminal>Package</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>NameSpace</nonterminal><bgf:expression><plus><bgf:expression><selectable><selector>ownedElements</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></bgf:production><bgf:production><nonterminal>Classifier</nonterminal><bgf:expression><nonterminal>Class</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Classifier</nonterminal><bgf:expression><nonterminal>Datatype</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Classifier</nonterminal><bgf:expression><nonterminal>Subsystem</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Classifier</nonterminal><bgf:expression><plus><bgf:expression><selectable><selector>features</selector><bgf:expression><nonterminal>Feature</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></bgf:production><bgf:production><nonterminal>Package</nonterminal><bgf:expression><nonterminal>Model</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Package</nonterminal><bgf:expression><nonterminal>Subsystem</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Package</nonterminal><bgf:expression><plus><bgf:expression><selectable><selector>importedElements</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></bgf:production><bgf:production><nonterminal>Class</nonterminal><bgf:expression><sequence><bgf:expression><plus><bgf:expression><selectable><selector>features</selector><bgf:expression><nonterminal>Feature</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Datatype</nonterminal><bgf:expression><sequence><bgf:expression><plus><bgf:expression><selectable><selector>features</selector><bgf:expression><nonterminal>Feature</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Subsystem</nonterminal><bgf:expression><sequence><bgf:expression><plus><bgf:expression><selectable><selector>features</selector><bgf:expression><nonterminal>Feature</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression><bgf:expression><plus><bgf:expression><selectable><selector>importedElements</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Model</nonterminal><bgf:expression><sequence><bgf:expression><plus><bgf:expression><selectable><selector>importedElements</selector><bgf:expression><nonterminal>ModelElement</nonterminal></bgf:expression></selectable></bgf:expression></plus></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Integer</nonterminal><bgf:expression><value>int</value></bgf:expression></bgf:production><bgf:production><nonterminal>String</nonterminal><bgf:expression><value>string</value></bgf:expression></bgf:production><bgf:production><nonterminal>Boolean</nonterminal><bgf:expression><choice><bgf:expression><terminal>true</terminal></bgf:expression><bgf:expression><terminal>false</terminal></bgf:expression></choice></bgf:expression></bgf:production></bgf:grammar>