Skip to content
Browse files

updated EBNF

  • Loading branch information...
1 parent ce67b18 commit 5606f2655885a17fe8e94f81b583ef4cc5559ce6 @siwells committed May 8, 2012
Showing with 10 additions and 11 deletions.
  1. +10 −11 dgdl_ebnf_2012.txt
View
21 dgdl_ebnf_2012.txt
@@ -1,21 +1,20 @@
-System ::= ID {[Game]+} | Game
-Game ::= ID {Composition [Regulation]* [Interaction]+}
+System ::= system:{id:ID, [Game]+} | Game
+Game ::= game:{id:ID, Composition [Regulation]* [Interaction]+}
Composition ::= {Turns Participants [Player]+ [Store]* [RoleList]?}
-Turns ::= {turns, magnitude:Magnitude, ordering:Ordering[, max:Number]?}
+Turns ::= turns:{magnitude:Magnitude, ordering:Ordering[, max:Number]?}
Magnitude ::= single | multiple
Ordering ::= strict | liberal
-Participants ::= {players, min:Number, max:Number|undefined}
-Player ::= {player, id:ID [, roles:{ID[, ID]*}]? }
-Store ::= {store, id:ID, owner:{ID[, ID]*}, structure:Structure, visibility:Visibility}
+Participants ::= players:{min:Number, max:Number|undefined}
+Player ::= player:{id:ID [, roles:{ID[, ID]*}]? }
+Store ::= store:{id:ID, owner:{ID[, ID]*}, structure:Structure, visibility:Visibility}
Structure ::= set | queue | stack
Visibility ::= public | private
-RoleList ::= {roles, {ID[, ID]*}}
-Regulation ::= {ID, scope:Scope, RuleExpr}
+RoleList ::= roles:{, {ID[, ID]*}}
+Regulation ::= rule:{id:ID, scope:Scope, RuleExpr}
Scope ::= initial | turnwise | movewise
-Interaction ::= {ID, Content[, Opener]?, RuleExpr}
+Interaction ::= move:{id:ID, content:{Content}[, opener:Str]?, RuleExpr}
Content ::= {[!]?ID[, [!]?ID]*}
-Opener ::= Str
-RuleExpr ::= {Effects [and Rule]* | Rule [else Rule]* [else Effects]?}
+RuleExpr ::= body:{Effects [and Rule]* | Rule [else Rule]* [else Effects]?}
Rule ::= if Condition [and Condition]* then Effects
Effects ::= Effect[ and Effect]*
Effect ::= ID{Param[, Param]*}

0 comments on commit 5606f26

Please sign in to comment.
Something went wrong with that request. Please try again.