Eine Auszeichnungssprache beschreibt mit Markierungen im Text, was ein Stück Inhalt ist, und gibt keine Anweisungen.
- Auszeichnungssprache
Eine Sprache, die Textinhalte mit Markierungen versieht, um ihre Bedeutung oder Struktur zu beschreiben, ohne Anweisungen zu geben.
Beispiel: „HTML ist eine Auszeichnungssprache und deshalb keine Programmiersprache.“Auch: Markup-Sprache, Markup Language.
Herkunft: englisch markup, die Anmerkung. Der Begriff stammt aus dem Verlagswesen: Lektoren versahen Manuskripte mit handschriftlichen Hinweisen für den Satz, etwa dass eine Zeile eine Überschrift sei.
Was sie von einer Programmiersprache unterscheidet
Sie beschreibt einen Zustand und keinen Ablauf. Eine Auszeichnungssprache kann sagen, dass ein Absatz eine Überschrift ist; sie kann nicht sagen, dass etwas wiederholt werden soll oder nur unter einer Bedingung gilt.
Genau das fehlt für eine Programmiersprache. Deshalb ist HTML keine, auch wenn es wie Code aussieht und in derselben Datei steht.
Die drei, die im Web zählen
HTML beschreibt Dokumente für den Browser. XML ist der allgemeine Fall: Damit lassen sich eigene Dokumentformate festlegen, und viele Austauschformate beruhen darauf. Markdown ist die schlanke Variante für Fließtext.
Allen gemeinsam ist der Aufbau aus Elementen, die ineinander liegen und dadurch einen Baum bilden. Wer diesen Gedanken einmal hat, versteht alle drei.
Warum die Unterscheidung im Projekt zählt
Weil daran hängt, wo eine Änderung hingehört. Was im Markup steht, lässt sich im Redaktionssystem pflegen. Was eine Entscheidung verlangt, ob etwas angezeigt wird oder nicht, gehört in eine Template-Sprache oder in den Code dahinter.
Die Frage „kann ich das selbst ändern“ lässt sich damit oft schon im Gespräch beantworten.