Ausgezeichnet schreiben

Strukturierte Texte mit einer XML-Auszeichnungssprache wie XHTML erstellen

Dr. O. Hoffmann 2004-12-12 - 2004-12-24, 2005-01-04 - 2005-01-08, 2005-02-05, 2005-07-02

6. Text schreiben und auszeichnen

Die im vorherigen Kapitel erläuterten Strukturelemente Dokumentitel, Kapitel, Unterkapitel, Absatz und noch viele andere wie etwa Listen, Tabellen, Formulare tragen den Inhalt des Dokumentes. Der Autor hat nun die Aufgabe, diese gemäß ihrer Funktion im Dokument eindeutig zu kennzeichnen, damit der Leser ihre Funktion identifizieren kann. Die Methode, mit der die Funktion zu identifizieren ist, hängt natürlich davon ab, wie der Text wahrgenommen wird und aus welchem Umfeld der Leser stammt. Ein blinder Nutzer eines Textes kann mit visuellen Reizen zur Textstrukturierung natürlich nichts anfangen. Ein tauber Mensch kann mit akustischen Reizen wenig anfangen, sofern sie ihm nicht etwa über die Vibration der Umgebung kenntlich werden. Farbenblinde können mit ausschließlich farblich abgegrenzten Strukturen nichts anfangen. Wenn das Dokument nun für alle Nutzer geeignet sein soll, wie es der Anspruch des Autors sein sollte, muß zwangsläufig eine andere Lösung her.

6.1 Historisches

In den vergangenen tausenden von Jahren, in denen Textdokumente erstellt wurden, wurden Textsegmente bei der Niederschrift durch die äußere Form, das Layout gekennzeichnet. Mündlich Vorgetragens wird hingegen durch Betonung, Lautstärke, Pausenlänge und Geschwindigkeit des Vortrages ausgezeichnet, auch durch spezielle Redewendungen, oft auch durch ritualisierte Gestik.
So oder so hat der Autor, der Schreiber, Setzer oder der Vortragende, allgemein der technische Darsteller für die äußere Form gesorgt und der Nutzer mußte damit ohne nennenswerte Einflußmöglichkeit zurecht kommen oder auch nicht. Als Nutzerhilfen standen ihm allenfalls eigene Mittel wie Lesezeichen, Brillen oder Lupen zur Verfügung. Die Kompromisse und Probleme lagen also immer auf der Seite des Nutzers.

6.2 Auszeichnung mit XML oder XHTML

Die Situation ist bei XML oder spezieller XHTML ganz anders.
Textsegmente werden nicht mehr durch die äußere Form oder Erscheinung ausgezeichnet. Die Auszeichnung findet stattdessen durch zusätzlichen Text statt, welcher die Funktion des Segmentes eindeutig beschreibt. Dies nennt man auch eine semantische Auszeichnung im Gegensatz zu einer visuellen oder akustischen Auszeichnung. Und darin liegt der zentrale Kern des ausgezeichneten Schreibens. Der Autor konzentriert sich in der Phase des Schreibens komplett auf den Inhalt und die beabsichtigte Funktion, welche das jeweilige Textsegment haben soll. Dies ist in diesem Stadium die Kernkompetenz, von der ihn praktisch keine technischen Details mehr ablenken. In XML kann sich der Autor die Bezeichnungen der Auszeichnungen gar selbst nach einfachen Regeln definieren. Für die öffentliche Version kann diese private Auszeichungssprache dann sinnvoller Weise in ein standardisiertes Format wie XHTML+RDFa überführt werden, welches durch den Standard eine weitestgehende Interpretierbarkeit beim Nutzer gewährleistet. Ist der Autor mit XHTML+RDFa vertraut, kann er auch gleich dieses nutzen. Da XHTML optimiert ist für internet-Seiten, kann allerdings die flexiblere Auszeichnung mit XML vorteilhaft sein, wenn der Text später in andere Medien wie klassisches Buch, Vorlese-kompakt-Diskette oder ein für den Drucker optimiertes Format wie postscript konvertiert werden soll. Da XHTML aber selbst ein XML-Format ist, ist dies auch mit XHTML-Dokumenten möglich, da dieses mit den Attributen class und id die Möglichkeit bietet, die relativ allgemein gehaltenen Auszeichnungselemente dokumentspezifisch zu erweitern und eindeutig zu identifizieren.

Besonders für ein semantisch reichhaltiges Werk kann es sich schnell erweisen, daß der begrenzte Sprachschatz von XHTML unzureichend ist, etwa kennt XHTML keine speziellen Elemente für Gedichte, Strophen, Verzeilen etc. XHTML+RDFa kann dies als erweiterbares Profil kompensieren. Ein anderes vordefiniertes XML-Format wie etwa »LML kann entweder als semantisch reichhaltigere Sprache direkt anstatt XHTML verwendet werden, oder auch nur, um Mittels der speziellen neuen Attribute der RDFa-Syntax XHTML geeignet zu erweitern, auch ohne Elemente zu verwenden, die in XHTML selbst nicht definiert sind. Ferner ist es auch möglich, in XML Formate zu mischen, um den erwünschten Zweck zu erreichen. In solch einem Dokument mit gemischtem Inhalt gehört jedes Element zu seinem jeweiligen Namensraum, womit seine spezifische Bedeutung sichergestellt ist und es zwischen den Formaten keine Konflikte bei Namensgleichheit gibt.

In XML kann der Autor dank der Anwendung seiner eigenen Dokumentbeschreibung die Auszeichnung in jedem Falle der Funktion spezifisch vornehmen, was einerseits vorteilhaft ist, andererseits aber auch zur Folge hat, daß der Nutzer ein leistungsfähigeres Werkzeug zur Darstellung braucht als bei XHTML, wo nur die Auszeichnung gemäß einem internationalen Standard erfolgen muß. Bei XML muß das Programm hingegen die jeweiligen Definitionen des Autors interpretieren können und korrekt anwenden. Das Programm oder der browser erhält dazu vom Autor die sogenannte Dokument-Typ-Definition, kurz DTD, in der die Bedeutung der dokumenteigenen Elemente nach dem XML-Standard beschrieben ist. Mittels der Formatierungssprache XSL kann der Autor zudem ein XML-Dokument in ein anderes transformieren, etwa in XHTML, SVG oder andere Formate, die sich besser für die beabsichtigte momentane Anwendung eignen. Eine direkte Angabe von Darstellungseigenschaften mittels CSS ist ebenfalls möglich. Zu bedenken ist dabei jedoch, daß Elemente in selbsterdachten XML-Dokumenttypen zwar eindeutig identifizierbar sind, semantisch für das Programm aber keine definierte Bedeutung haben. Damit bei einem beliebigen Nutzer die semantische Information "Überschrift" auch ankommt, reicht eine visuelle Formatierung nicht aus, was für beliebige Ausgabeprogramme fast nur mit XSL-Dateien umzusetzen ist, die ebend doch wieder in XHTML konvertieren. Von zentraler inhaltlicher Bedeutung ist also, daß bei einem eigenen Format die semantische Bedeutung und die Funktionalität spezifiziert ist und diese Spezifikation auch allgemein zugänglich ist und die Funktionalität in einem Darstellungsprogramm implementierbar ist. Erfüllt ein Format diese Anforderungen, ist es nicht unbedingt notwendig, dieses zu konvertieren. Stattdessen kann direkt angeboten werden.

Die Bedeutung von XHTML-Elementen ist allgemein (jedem Darstellungsprogramm) bekannt, die beabsichtigte Funktion von Elementen ist dank Standard für jedes Dokument die gleiche, jedoch weniger spezifisch beschrieben als es mit XML möglich ist. Immerhin gibt es bereits so viele sorgfältig vordefinierte Elemente, daß damit im Regelfalle sehr gut zurecht zu kommen ist, auch weil es wie schon beschrieben möglich ist, durch Verwendung des Klassenattributes class allgemeine Elemente für die spezielle Anwendung näher zu beschreiben. Es ist daher immer sinnvoll, den Wert des class-Attributes aus der Funktion des Textsegmentes abzuleiten und nicht aus der beabsichigten Erscheinung, die sich bei verschiedenen Anwendungen auch einmal ändern mag. Die Kombination von funktionsgemäßer Verwendung von XHTML-Elementen und einer weiteren Spezifizierung mittels des Klassenattributes ergibt hier ein Maximum an Strukturinformation für den späteren Nutzer bei minimalen Anforderungen an die Darstellungsprogramme. Zur eindeutigen Identifikation von bestimmten Textstellen, die demzufolge genau einmal im Dokument vorkommen, kann zudem das id-Attribut als Identifikation dienen. Dies kann etwa vom browser genutzt werden, um Textstellen leichter wiederzufinden und vom Autor, um diese eindeutig zu markieren, um sie weiter auszuzeichnen oder für die Darstellung als unikate Textpassagen zu formatieren. Oft wird leider die Funktion des id-Attributes mit der des class-Attributes verwechselt. Mit dem class-Attribut werden Funktionen gekennzeichnet, die auch mehrfach im Dokument vorkommen können. Mit dem id-Attribut wird genau eine Textpassage im Dokument identifiziert, um sie eindeutig zu lokalisieren. Eine Klasse kann also viele Elemente haben und ein Element kann zu vielen Klassen gehören. Die Zuordnung vom Wert des Attributes id zu einem bestimmten Element im Dokument ist jedoch injektiv.

6.3 Anfänge der Textauszeichnung und veraltete Methoden

Soweit ist die Auszeichnung von Text eigentlich ganz einfach. Leider hat sich das nicht gleich seit Anbeginn der Computerzeit durchgesetzt. Begonnen hat diese revolutionäre Form der Textauszeichnung schon mit professionellen Textsatzsystemen wie Tex oder LaTex in den 70er Jahren des letzten Jahrhunderts. Bereits Tex ist ein Klartextformat, welches Textsegmente nach ihrer Funktion auszeichnet. Dieses System wurde und wird nach wie vor als aktuelles professionelles Format verwendet, um wissenschaftliche Texte, Bücher und Zeitschriftenartikel zu setzen, bei denen sich der Autor nicht mehr um die konsistente Anordnung von Textsegmenten und Strukturen kümmern muß. Tex oder LaTex übernimmt dies anhand komplizierter Algorithmen, die von den jahrhundertelangen Erfahrungen der Buchdruckerkunst profitieren, die berücksichtigen, wie Text formatiert sein muß, um zumindest von der Form her gut lesbar zu sein.

Daneben gibt es leider immer noch Programme, die sich mehr an den alten Techniken orientieren, die eher Schreibmaschinen simulieren oder das Meißeln des Textes in Stein oder das Ritzen in Ton. Die Hersteller dieser Programme und auch deren zahlreiche Nutzer haben die überlegenen Eigenschaften von Auszeichnungssprachen offenbar noch nicht begriffen und sind noch nicht in der Lage, die Möglichkeiten der digitalen Computerformate optimal zu nutzen. Der Autor hat sich dabei wieder selbst um die Auszeichnung des Textes durch die äußere Form zu bemühen und kann sich nicht auf seine Kernkomptenz, den Inhalt konzentrieren. Jahrhundertelange Erfahrungen im Textsatz sind so für ihn verloren. Mit solchen Programmen wird ihm gar nahegelegt, sich über die jeweilige Funktion des Textsegmentes keine Gedanken zu machen. Bei solchen Formaten bleibt eigentlich nur der Vorteil der digitalen Speicherung erhalten, die Dokumente sind jederzeit wieder ohne weitere Mühe zu editieren. Das gilt allerdings bei den meisten Programmen auch nur eingeschränkt, weil die Hersteller versuchen, durch proprietäre Dateiformate die Autoren und Leser an sich zu binden, indem die Dokumente nur mit ihrer kostenpflichtigen software editierbar oder ansehbar sind. In der Regel handelt es sich also nicht um Klartextformate, sondern um spezielle Kodierungen der Hersteller. Das hat zur Folge, daß der Inhalt verloren ist, wenn der jeweilige Programmhersteller das Format aufgibt oder das Programm verloren geht oder aus sonstigen Gründen nicht mehr genutzt wird. Diese Art der Texterstellung auf dem Rechner wird auch WYSIWYG genannt - du bekommst, was du siehst. In den Ohren eines Blinden oder Sehbehinderten oder eines Menschen, der andere software oder hardware als der Autor verwendet, mag sich das mehr wie eine Drohung oder Hohn anhören. Gerade wegen der spezifischen Anforderungen an software und hardware stellt sich das Versprechen in der Regel als Lüge heraus, denn ohne passende hardware sieht oder hört der Nutzer meist gar nichts, er hat sich einfach nur Datenmüll eingehandelt. Dagegen wären ihm sogar in Stein gemeißelte Texte eher zugänglich - sogar Blinde könnten die Buchstaben ertasten.

Demgegenüber sind XHTML oder XML die revolutionären Verfahren der Zukunft für die digitalen Medien. Auch für diese Formate gibt es oben genannte Editoren, die eine visuelle Formatierung simulieren. Die Gefahr besteht nun darin, daß diese Editoren tatsächlich nur für eine visuelle Formatierung sorgen und den Autor nicht zu einer fachgerechten inhaltlichen Auszeichnung führen. Einige nutzen auch ungültige Syntax und sind deshalb schon unbrauchbar. Sofern diese Editoren den Autor wirklich bei der Auszeichnung der Funktion zur Seite stehen, sind sie allerdings unbedenklich für den kundigen Autor zu verwenden. Sobald dieser kundig ist, braucht er solche Editoren allerdings eigentlich nicht mehr und kann einen textbasierten Editor verwenden und damit für sich mehr Transparenz in die Erstellung seines Dokumentes bringen. Der Editor kann ohnehin nicht ahnen, was die Funktion eines Textsegmentes ist, daher sind eher Editoren hilfreich, die die korrekte Syntax der Auszeichnungen beim Schreiben für den Autor farblich oder sonstwie geeignet hervorheben. Mittels eines visuell orientierten Editors falsch ausgezeichnete Texte jedenfalls werden den Nutzer mehr verwirren als garnicht ausgezeichnete Texte.

Da liegt ein weiterer wichtiger Punkt von ausgezeichnetem Text: Nur wenn die Auszeichnung die Funktion des Inhaltes wiederspiegelt, kann die Auszeichnung auch beim Verständnis des Textes helfen.