Browsable GAIA Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: dsl/multi-agent/gaia/simon/extracted
Source used for this grammar: Eric Simon, GAIA.ecore, 2006/07/13

Summary

Syntax

OrganizationalStructure ::=
	[organization]::Organization+
Organization ::=
	[collaborates]::Organization [interacts]::Organization [member]::AgentType+ [observes]::OrganizationalRule+
OrganizationalRule ::=
	SafetyRule
OrganizationalRule ::=
	LivenessRule
OrganizationalRule ::=
	SafetyRule
	LivenessRule
SafetyRule ::=
	ε
LivenessRule ::=
	ε
AgentType ::=
	[provides]::Service+ [collaborates]::AgentType [agentType]::AgentType [plays]::Role+
Service ::=
	[inputs]::String [outputs]::String [pre-conditions]::String [post-conditions]::String
Role ::=
	[activity]::Activity+ [communication]::Communication+ [responsibility]::Responsibility+ [actsOn]::AssociationConnector
Activity ::=
	ε
Responsibility ::=
	LivenessProperty
Responsibility ::=
	SafetyProperty
Responsibility ::=
	LivenessProperty
	SafetyProperty
LivenessProperty ::=
	ε
SafetyProperty ::=
	ε
AssociationConnector ::=
	[actsOn]::Resource+ [role]::Role [permission]::Permission+
Permission ::=
	[association]::AssociationConnector
Resource ::=
	[name]::String [description]::String [permitted_action]::Action+ [environnement]::Environnement
Environnement ::=
	[resource]::Resource+
Action ::=
	[type]::String
Communication ::=
	[observes]::OrganizationalRule+ [protocol]::Protocol
Protocol ::=
	[name]::String [initiator]::String [partner]::String [inputs]::String [outputs]::String [description]::String
String ::=
	string

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