Es erscheint recht kompliziert, mit den in den oberen Abschnitten stehenden Möglichkeiten auf einfache Weise eine Dokumenteninstanz zu erzeugen. Hier soll nun eine Vereinfachung mit Kurzreferenzen an einem Beispiel deutlich gemacht werden.
Es sei nun ein Nachrichtensystem gegeben, indem eine Nachricht immer die prinzipiell gleiche Struktur habe: AN, VON, DATUM, BETREFF, TEXT.
Mit der normalen Elementen und Attributen-Deklaration könnte eine Dokumenteninstanz dann z.B. folgendes Aussehen haben:
<Nachricht> <an>
Knörzer
</an> <von>
Hofmann
</von> <Datum>
01.02.1995
</Datum> <Betreff>
Seminar WS 94/95
</Betreff> <Text>
Wie soll meine Seminararbeit jemals fertig werden, wenn ich dauernd mein Passwort vergesse?!
</Text> </Nachricht>
Dies ist natürlich etwas umständlich, falls es für jede Nachricht getippt werden muß. Da man bei der Elementen-Deklaration auch die Verwendung bestimmter Tags freistellen kann (Anfangs- oder Endtag als ``optional`` zu deklarieren), hier außerdem alle Abschnitte klar getrennt sind, sich also nicht überlappen, kann die Nachricht jetzt wesentlich einfacher geschrieben werden als:
<an>
Knörzer
<von> Hofmann
<Datum> 01.02.1995
<Betreff> Seminar WS 94/95
<Text> Wie soll meine Seminararbeit jemals fertig werden, wenn ich dauernd mein Passwort vergesse?!
Die Anpassung an den Benutzer kann hier mit Kurzreferenzen noch weiter verbessert werden. Diese Kurzreferenzen sind nicht mit den Referenzen, welche über die Entitäten definiert werden, zu verwechseln. Eine mögliche Deklaration könnte wie folgt aussehen:
<!ENTITY an STARTTAG ``an``>
<!ENTITY von STARTTAG ``von``>
<!ENTITY datum STARTTAG ``datum``>
<!ENTITY betreff STARTTAG ``betreff``>
<!ENTITY text STARTTAG ``text``>
<!SHORTREF Ref1
``An:`` an
``Von:`` von
``Datum:`` datum
``Betreff:`` betreff
``&RE;&RS;&RE;&RS;`` text>
<!USEMAP Ref1 Nachricht>
Die USEMAP-Anweisung bewirkt die automatische Verwendung dieser Referenz beim Auftreten einer NACHRICHT. ``An:`` wird über die Definition in SHORTREF durch die Entität AN mit dem entsprechenden Tag < an> ersetzt. Wird eine Leerzeile entdeckt, so wird der Text erwartet (letzte Zeile von der SHORTREF).
Insgesamt kann die Dokumenteninstanz einer Nachricht dann wie folgt aussehen:
An: Knörzer
Von: Hofmann
Datum: 01.02.1995
Betreff: Seminar WS 94/95
Wie soll meine Seminararbeit jemals fertig werden, wenn ich dauernd mein Passwort vergesse?!
Eine deutliche Erleichterung ist offensichtliche. Obwohl dies wie ein Dokument ohne Markup aussieht, stecken hinter dieser Instanz ein klare Elementenhierarchien und die Möglichkeit zur eindeutigen Analyse durch einen SGML-Parser.