Ebnf2ps-1.0.9: examples/ebnf.BNF
File = {Production};
Production = Nonterminal [ String ] "=" Term ";" ;
Term = Factor / "|" ; # alternative
Factor = ExtAtom + ; # sequence
ExtAtom = Atom
| Atom "/" Atom # repetion through Atom
| Atom "+"; # at least one repetion
Atom = Nonterminal
| String # terminal string
| "(" Term ")"
| "[" Term "]" # an optional Term
| "{" Term "}" # zero or more repetions
;
String = "\"" { Character } "\"" ;
Nonterminal = letter { letter | digit | "_" | "." } ;
Character = character
| ["\\"] anycharacter ;