Backus - Naur - Formen.
Vereinfachte Darstellung kontextfreier Grammatiken durch BNF oder erweiterte BNF (EBNF) sowie durch Syntaxdiagramme (s.u.)
- Nichtterminale Symbole durch spitze Klammern < ... > gekennzeichnet.
- Metasymbole sind
- ::= ist definiert als
- | trennt Alternativen.
Im Vergleich zu BNF reichere Metasyntax und damit einfachere und bessere lesbare Schreibweise.
- Metasymbole sind
- (...|...) genau eine Alternative kann stehen.
- [ ... ] Option: Inhalt der Klammer steht einmal oder keinmal.
- {...} Unbedingte Wiederholung: Inhalt der Klammer steht mindestens einma, d.h. {A}=A|AA|AAA|...
Beispiel: {(a|b)} erzeugt die Menge der Zeichenketten {a,b,aa,ab,ba,bb,...} denn der Inhalt der Klammer ist der Ausdruck A=(a|b), dessen Auswertung entweder a oder b ergibt.