Syntaxdiagramm

Einführung

Syntaxdiagramme sind eine Möglichkeit, eine reguläre Grammatik  und kontextfrei Grammatiken graphisch darzustellen. Sie stellen eine graphische Alternative zur Backus-Naur-Form oder zu EBNF als Metasprachen dar. 

Die Darstellung einer Grammatik besteht aus einer Reihe von Syntaxdiagrammen. Jedes Diagramm definiert ein Nicht-Terminal. Es gibt ein Hauptdiagramm, das die Sprache folgendermaßen definiert: Um zu der Sprache zu gehören, muss ein Wort einen Pfad im Hauptdiagramm beschreiben.

Syntax

Jedes Diagramm hat einen Einstiegspunkt und einen Endpunkt. Das Diagramm beschreibt mögliche Pfade zwischen diesen beiden Punkten, indem es andere Nicht-Terminale und Terminale durchläuft. Terminale werden durch runde Boxen dargestellt, während Nichtterminale durch quadratische Boxen dargestellt werden.

Wie bei regulären Ausdrucken kann man zudem Verkettungen (Sequenz), Alternativen und Wiederholungen abbilden. 

Quelle(https://de.wikipedia.org/wiki/Syntaxdiagramm)

Beispiel

Das folgende Bespiele definiert, wie eine Variable  (hier Bezeichner genannt) in der Programmiersprache Java aufgebaut sein darf.  Diese Bezeichner dürfen:

Diese Grammatiken kann in einem Syntaxdiagramm wie folgt dargestellt werden:

Dieses Syntaxdiagramm kann auch in einen DEA umgewandelt werden: