- Auszeichnungssprache
-
Eine Auszeichnungssprache (englisch: Markup Language, ML) dient zur Beschreibung des Inhalts eines Dokumentenformates und teilweise zur Beschreibung des Verfahrens, welches zur Bearbeitung dieser Daten benötigt wird. Ursprünglich dienten die Auszeichnungen im Text als Anweisungen für die Setzer im Drucksatz, mit der Weiterentwicklung in der Typografie für digitale Texte wurden daraus jedoch komplexe Sprachen.
Inhaltsverzeichnis
Geschichte
Die Strukturmerkmale eines Textes können durch Schriftauszeichnung wie Hervorhebungen in Fett- oder Kursivschrift, Fußnoten, Literaturhinweise, Absätze, Überschriften „erkannt“ werden. Notiert wurden derartige Strukturen früher durch sogenannte Textauszeichnungen (markup), die ursprünglich – handschriftlich auf einem Manuskript eingetragen – Formatierungsanweisungen für den Schriftsetzer waren.
Funktionsweise
Bei Auszeichnungssprachen werden die Eigenschaften, Zugehörigkeiten und Verfahren von bestimmten Wörtern, Sätzen und Abschnitten (Auszeichnungselemente) eines Textes oder einer Datenmenge beschrieben und zugeteilt, in der Regel indem sie mit Auszeichnungselementen – auch Tags genannt – markiert werden.
Die Quelltexte werden in der Regel in ASCII oder Unicode (meist UTF-8) verfasst. Oft bietet die Sprache auch die Möglichkeit, Sonderzeichen zu beschreiben, meist mit Hilfe einer numerischen Zuweisung (Unicode) oder durch Benennung (zum Beispiel für „µ“ in LaTeX „\mu“ und in HTML „µ“).
Beispiele
Vergleichstabelle Beispiel für … HTML LaTeX Wikitext Überschrift <h1>Überschrift</h1> \section{Überschrift} = Überschrift = Aufzählung <ul>
<li>Punkt 1</li>
<li>Punkt 2</li>
<li>Punkt 3</li>
</ul>\begin{itemize}
\item Punkt 1
\item Punkt 2
\item Punkt 3
\end{itemize}* Punkt 1
* Punkt 2
* Punkt 3fetten Text <b>fett</b> \textbf{fett} '''fett''' kursiven Text <i>kursiv</i> \textit{kursiv} ''kursiv'' Unterscheidung und Abgrenzung
Bei den Auszeichnungssprachen wird heute grob unterschieden in Sprachen zur reinen Beschreibung, Descriptive Markup Language (DML) und in prozedurale Auszeichnungssprachen, Procedural Markup Language (PML).
Mit den reinen Beschreibungssprachen werden die Informationen beschrieben, also die physische und logische Struktur eines Dokumentes (neudeutsch: Layout) und die Semantik der Elemente, im Gegensatz zu den prozeduralen Auszeichnungssprachen, welche die Darstellung der Dokumente – unter anderem auf dem Bildschirm, im Webbrowser oder für Drucker – beschreiben.[1]
Descriptive Markup Language
Zu den reinen Beschreibungssprachen gehören unter anderem die in SGML oder XML definierten Sprachen HTML, DocBook, TEI, MathML, WML, XAML und SVG.
Eine Vereinfachte Auszeichnungssprache ist eine Auszeichnungssprache mit einem einfachem Syntax um Dokumente (z.B. in Wiki, Blogs, Foren) einfach manuell erstellen und lesen zu können.
Procedural Markup Language
Die darstellenden Seitenbeschreibungssprachen wie das Textsatzsystem TeX und dessen Makropakete LaTeX oder ConTeXt, kann man weitläufigst zu den Auszeichnungssprachen zählen. Hier werden jedoch sowohl Eigenschaften der reinen Beschreibungssprachen sowie der prozeduralen Auszeichnungssprachen verwendet, wie das auch bei den Seitenbeschreibungssprachen für PDF und PostScript der Fall ist.
Programmiersprache
Die Abgrenzung ist zum Teil jedoch auch sehr schwierig, da beispielsweise bei der Sprache PostScript auch Eigenschaften von Programmiersprachen verwendet werden. Zur Darstellung einer Lissajous-Figur in Postscript müssen so z. B. nicht alle Kanten der Grafik in einer Segmentliste enthalten sein, da diese auch anhand eines programmierten Algorithmus zur Laufzeit erzeugt werden können. Das Ziel ist jedoch eine beschreibende Datenauszeichnung, allerdings wird diese unter Umständen erst zur Laufzeit aus einer prozeduralen Vorstufe dynamisch erzeugt. Die Abgrenzung zu Programmiersprachen wird in diesem Fall fließend, denn wie diese besitzen auch alle Auszeichnungssprachen eine Syntax, eine Grammatik und eine Semantik, was aber noch keine hinreichenden Bedingungen sind zur Definition einer Programmiersprache. Eine Programmiersprache unterscheidet sich von einer reinen Auszeichnungssprache durch die Elemente von Sequenz, Iteration und Auswahl.
Siehe auch
Einzelnachweise
- ↑ DML (descriptive markup language) – Eintrag bei ITWissen.info
Wikimedia Foundation.