Syntax
Einführung
Syntax bezeichnet die grammatischen Regeln die von einer Programmier- oder Modellierunsgssprache (z.B. Java oder UML)) definiert werden. Die Syntax umfasst sämtliche Regeln, der Anwendung zu konkret gebauten Sätzen führen (Quelle Informatik, Dr. Lutz Engelmann, Paetec, 2002 S. 404). In vielen Fällen werden Syntaxfehler durch falsch gesetzte oder fehlende Zeichen wie Semikola, Kommata und Klammern oder bedeutungstragende Wörter wie FOR oder BEGIN hervorgerufen.
Integrierte Entwicklungsumgebungen verfügen in der Regel über einen Compiler, der derartige Fehler sofort erkennt und dem Programmierer meldet. Auch Modellierungswerkzeuge führen Syntaxüberprüfungen durch. Werden Modellierungsregeln verletzt, werden dieses Verstöße angezeigt.
Natürliche Sprachen besitzen ebenfalls eine Syntax. Für englische Sätze gilt die SPO-Regel, die die Reihenfolge Subjekt-Prädikat-Objekt vorschreibt. Der Satz "She likes soccer players." ist syntaktisch korrekt, denn die Analyse gemäß der SPO-Regel verläuft positiv.
Allgemein gibt es zwei Anwendungsfälle von Syntax:
1. Erzeugung (Synthese) eines Satzes
2. Erkennung (Analyse) eines Satzes
Ableitungsbaum
Die für die Analyse bzw. Synthese eines Satzes verwendete Darstellung heiß Ableitungsbaun. Dabei ist zu beachten, dass so genannte Syntaxbäume nur dann enstehen können, wenn sämtliche Regeln eine spezielle Form besitzen.
Die Satzbauregel für englische Sätze lautet in Kurzform
Satz -> Subjekt Prädikat Objekt.
Lies: "Einsatz definiert als eine Folge von SUBJEKT, RPÄDIKAT, OBJEKT und einen anschließenden Punkt."
Diese eine Regeln genügt noch nicht, denn Sie gibt keine Auskunft darüber, wofür SUBJEKT, PRÄDIKAT und OBJEKT stehen. Dies legt folgende Regel fest:
SUBJEKT -> She
SUBJEKT -> HE
PRÄDIKAT-> loves
PRÄDIKAT-> kicked
PRÄDIKAT-> likes
OBJEKT -> soccer players
OBJEKT -> swimming
OBJEKT-> the ball
Damit können insgesamt 18 Sätz gebildet werden, wobei ein Satz wie "She kicked soccer players." daran erinnert, dass die Semantik wirklich keine Rolle spielt.
Formale Grammatik
Es gelingt immer dann mindestens einen Ableitungsbaum für einen gegebenen Satz anzugeben, wenn in jeder Regel auf der linken Seite genau eine zu erklärende syntaktische Einheit steht.
Beispiele
Natürliche Sprache
Auch natürliche Sprachen besitzen eine Syntax. Für englische Sätze gilt die SPO-Regel, die die Reihenfolge Subjekt-Prädikat-Objekt vorschreibt. Der Satz "She likes soccer players." ist syntaktisch korrekt, denn die Analyse gemäß der SPO-Regel verläuft positiv.
Programmiersprache
Ein Beispiel eines Syntaxfehlers in der Programmiersprache Java:
public class Beispiel {
public static void main(String[] args) {
System.out.println("Hallo Welt!")
}
}
In diesem Fall würde durch den Java-Syntax-Fehler folgende Ausgabe erzeugt:
Syntax error, insert ";" to complete BlockStatements
UML Modellierung
Die Unified Modeling Language kurz UML, ist eine grafische Modellierungssprache zur Spezifikation, Konstruktion und Dokumentation von Software-Teilen und anderen Systemen. Die 14 unterschiedlichen Diagrammtypen sind syntaktische klar definiert. Die Sichtbarkeit von Attributen und Methoden wird zum Beispiel im Klassendiagramm durch die Zeichen +,#,- (+=public, #= protected, - = private) definiert. Klassen werden als Rechtecke dargestellt, etc. Werden diese Vorgaben verletzt, ist das Modell syntaktisch nicht korrekt.
Beispiel Klasse eines UML-Klassendiagramms (Quelle Wikipedia)