„Syntaxdiagramm“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
Gak69 (Diskussion | Beiträge) K HTML-Formatierung durch Wiki-Formatierung ersetzt |
Fehler in Vorlage:Literatur – *** Ungültig: 'Zitat' mit Wikisyntax; Commonscat mit Helferlein hinzugefügt |
||
Zeile 7: | Zeile 7: | ||
Ein minimales Syntaxdiagramm besteht aus einem der Grundbausteine: |
Ein minimales Syntaxdiagramm besteht aus einem der Grundbausteine: |
||
* einem Terminalsymbol, gekennzeichnet durch einen Kasten mit abgerundeten Ecken |
* einem Terminalsymbol, gekennzeichnet durch einen Kasten mit abgerundeten Ecken |
||
* einem Nichtterminalsymbol, gekennzeichnet durch einen eckigen Kasten.<ref name="compilerbau"/> |
* einem Nichtterminalsymbol, gekennzeichnet durch einen eckigen Kasten.<ref name="compilerbau" /> |
||
Syntaxdiagramme können zu größeren Syntaxdiagrammen zusammengesetzt werden: |
Syntaxdiagramme können zu größeren Syntaxdiagrammen zusammengesetzt werden: |
||
Zeile 41: | Zeile 41: | ||
Beispiele: |
Beispiele: |
||
* Der Standard für [[JavaScript Object Notation|JSON]]<ref>https://www.ecma-international.org/publications-and-standards/standards/ecma-404/</ref> |
* Der Standard für [[JavaScript Object Notation|JSON]]<ref>https://www.ecma-international.org/publications-and-standards/standards/ecma-404/</ref> |
||
* Das Handbuch zu [[Pascal (Programmiersprache)|Pascal]]<ref name="pascal-1974"/> |
* Das Handbuch zu [[Pascal (Programmiersprache)|Pascal]]<ref name="pascal-1974" /> |
||
== Weblinks == |
== Weblinks == |
||
{{Commonscat|Syntax diagrams|Syntaxdiagramm|audio=0|video=0}} |
|||
* [https://www.hsg-kl.de/faecher/inf/material/sprachen/syngra/index.php Regeln zur Umsetzung von Grammatikregeln in Syntaxdiagramme] |
* [https://www.hsg-kl.de/faecher/inf/material/sprachen/syngra/index.php Regeln zur Umsetzung von Grammatikregeln in Syntaxdiagramme] |
||
Zeile 60: | Zeile 61: | ||
| Kapitel = 3. Syntax Graphen |
| Kapitel = 3. Syntax Graphen |
||
| Seiten = 21 |
| Seiten = 21 |
||
| Zitat = |
| Zitat = ''A5.'' Ist ein Element ein nicht-terminales Symbol ''A'', so wird es durch ein Rechteck eingefasst. [… Zeichnung …] ''A6.'' Ist ein Element ein Terminalsymbol s, so wird es durch einen Kreis gekennzeichnet. [… Zeichnung …] |
||
[… Zeichnung …] |
|||
'''A6.''' Ist ein Element ein Terminalsymbol s, so wird es durch einen Kreis gekennzeichnet. |
|||
[… Zeichnung …] |
|||
}}</ref> |
}}</ref> |
||
</references> |
</references> |
Version vom 10. November 2024, 18:12 Uhr
Ein Syntaxdiagramm wird in der theoretischen Informatik benutzt, um die Syntax einer Regelmenge graphisch darzustellen. Insbesondere können damit formale Sprachen bis zur Klasse der kontextfreien Sprachen und damit aufgrund der Teilmengeneigenschaft auch die Syntax von Programmiersprachen in einem Syntaxdiagramm dargestellt werden.
Geschichte
Syntaxdiagramme wurden 1974 in der Definition der Programmiersprache Pascal[1] eingesetzt, vermutlich auch schon früher.
Bausteine
Ein minimales Syntaxdiagramm besteht aus einem der Grundbausteine:
- einem Terminalsymbol, gekennzeichnet durch einen Kasten mit abgerundeten Ecken
- einem Nichtterminalsymbol, gekennzeichnet durch einen eckigen Kasten.[2]
Syntaxdiagramme können zu größeren Syntaxdiagrammen zusammengesetzt werden:
- ein Syntaxdiagramm kann optional gemacht werden
- ein Syntaxdiagramm kann 0-mal oder öfter wiederholt werden
- ein Syntaxdiagramm kann 1-mal oder öfter wiederholt werden
- mehrere Syntaxdiagramme können verkettet oder hintereinandergeschaltet werden
- mehrere Syntaxdiagramme können alternativ durchlaufen werden
Aus diesen Grundbausteinen und Zusammensetzungen lassen sich Syntaxdiagramme konstruieren, die gleichmächtig zu kontextfreien Grammatiken sind.
Eigenschaften
Jedes Syntaxdiagramm hat einen Eingang und einen Ausgang, die durch Linien verbunden sind. Die Linien haben eine Richtung.
Umsetzung der EBNF in ein Syntaxdiagramm

Jede Erweiterte Backus-Naur-Form (EBNF) kann mithilfe der nebenstehenden Grafik eins zu eins in ein Syntaxdiagramm umgewandelt werden.
Beispiel

Das Bild zeigt, wie die natürlichen Zahlen im Dezimalsystem geschrieben werden.
Verwendung
In weiten Teilen der Informatik werden Grammatiken textuell beschrieben, insbesondere in Dokumenten, deren Zielgruppe mit formalen Schreibweisen von Grammatiken vertraut ist. In Dokumenten mit größeren Zielgruppen können Syntaxdiagramme verwendet werden, um die Grammatikregeln anschaulicher darzustellen.
Beispiele:
Weblinks
Einzelnachweise
- ↑ a b PASCAL User Manual and Report, Kathleen Jensen, Niklaus Wirth, 1974, Springer-Verlag, ISBN 3-540-06950-X
- ↑ Niklaus Wirth: Compilerbau (= Leitfäden der angewandten Mathematik und Mechanik (LAMM). Band 36). 3., überarbeitete und erweiterte Auflage. B. G. Teubner, Stuttgart 1984, ISBN 3-519-22338-4, 3. Syntax Graphen, S. 21: A5. Ist ein Element ein nicht-terminales Symbol A, so wird es durch ein Rechteck eingefasst. [… Zeichnung …] A6. Ist ein Element ein Terminalsymbol s, so wird es durch einen Kreis gekennzeichnet. [… Zeichnung …]
- ↑ https://www.ecma-international.org/publications-and-standards/standards/ecma-404/