Menschen sind sehr gut darin, Muster und Zusammenhänge zu erkennen. Wenn jemand am Anfang eines Vortrags ein Folie and die Wand projiziert, die etwa so aussieht:
1. Generisches Markup
Generisches Markup ist wichtig, um Texte automatisch zu verarbeiten.
fällt es den wenigsten schwer (sofern sie Deutsch lesen können), das Muster aus hellen und dunklen Flecken an der Wand zu deuten. Die erste, hervorgehobene Zeile ist offensichtlich die Überschrift des ersten Abschnitts des Vortrags, und der Rest ist der erste Absatz des den Vortrag begleitenden Texts auf der Folie. In diesem Text können weitere Strukturen erkannt werden, einige der Wörter sind durch eine andere Schrift hervorgehoben. Ein aufmerksamer Betrachter kann sogar zwischen den beiden gleich ausshenden Hervorhebungen einen Unterschied erkennen: die erste bezeichnet einen an dieser Stelle eingeführten technischen Terminus, die zweite ist eine rhetorische Betonung.
So lange Menschen die einzigen nennenswerten Konsumenten von Texten waren, war eine derartige, über das Aussehen des Textes vermittelte Gliederung völlig ausreichend. Inzwischen will man aber immer öfter Texte (oder textähnliche Daten) mit automatischen Datenverarbeitungsanlagen (was eine treffendere Bezeichnung als Computer ist) verarbeiten. Diese haben aber immer noch notorische Schwierigkeiten, eine Verbindung zwischen einem Text und möglicherweise nur implizit vorhandenen Kontextinformationen herzustellen. Deshalb muss man ihnen die zu verarbeitenden Texte passend zurechtgemacht präsentieren.
Zum Beispiel: LaTeX
Ein mögliches Beispiel dafür ist der Ansatz von LaTeX. Ein Fragment eines LaTeX-Dokuments, das für die Erstellung der Folie benutzt sein könnte, könnte so aussehen:
\section{Generisches Markup} \emph{Generisches Markup} ist wichtig, um Texte \emph{automatisch} zu verarbeiten.
Hier ist der eigentliche Text um Befehle erweitert, die angeben,
welche Funktion einzelne Teile des Texts haben.
Ein LaTeX-Befehl wie \emph
gibt an, dass das in
geschweifte Klammern stehende Argument dieses Befehls betont ist, nicht
aber, wie genau diese Betonung graphisch umgesetzt wird.
Normalerweise setzt LaTeX betonten Text kursiv,
in einem kursiven Textbereich aber aufrecht.
Diese kontextabhängige Darstellung wäre unmöglich, wenn nicht die
Funktion, sondern direkt die Formatierung angegeben wäre.
Der \section
-Befehl hat deutlich mehr Wirkungen als der
\emph
-Befehl:
Er beginnt einen neuen Abschnitt und setzt sein Argument mit einer
laufenden Nummer davor als Überschrift darüber.
Ein Programm, dass ein solches LaTeX-Dokument verarbeiten will, muss
einiges über den Aufbau eines LaTeX-Dokuments wissen.
Es muss wissen, dass \section
einen neuen Abschnitt
beginnt, dass auf \section
direkt folgender Text einen
Absatz innerhalb dieses Abschnitts bildet, dass
\paragraph
den Beginn einer Untereinheit in diesem
Abschnitt bezeichnet, \appendix
und \chapter
aber den Abschnitt beenden.
Ein wesentlicher Teil der Struktur ist also nur implizit in dem
Dokument enthalten.
Explizite Auszeichnung der Struktur
In vielen Fällen wäre es aber wünschenswert, ein Dokument auch dann verarbeiten zu können, wenn man die formalen Anforderungen an den Aufbau nicht in allen Details vorher kennt. Dazu muss man es auf eine Weise auszeichnen, in der explizit angegeben ist, wo ein bestimmter Teil eines Textes anfängt und aufhört und welche Teile als Bestandteile von anderen sind. Dies könnte so aussehen:
Hier ist klar, dass der mit<sect> <title>Generisches Markup</title> <para> <term>Generisches Markup</term> ist wichtig, um Texte <em>automatisch</em> zu verarbeiten. </para> </sect>
<sect>
ausgezeichnete
Abschnitt eine mit <title>
ausgezeichnete Überschrift
und einen mit <para>
ausgezeichneten Absatz enthält,
der wiederum verschiedene andere Dinge enthält.
Diese Form der Auszeichnung kann auch die beiden unterschiedlichen
Hervorhebungen unterscheiden.
Das wichtigste ist aber, dass dieses Dokument von einem Programm, das
nichts über Abschnitte, Überschriften oder Absätze weiß, korrekt
gelesen und zum Beispiel in eine Baumdarstellung übersetzt werden
kann:
Dies ist einer der zentralen Punkte, an denen sich XML von einigen ihm vorausgehenden älteren Auszeichnungsprachen unterscheidet.