1. Einleitung1.3.2. DocBookDocBook wurde mit der Absicht entworfen, Bücher <strong>und</strong> deren Bestandteile beschreiben zu können,wobei das Hauptaugenmerk auf Soft- <strong>und</strong> Hardwaredokumentationen liegt.DocBook ist <strong>ein</strong> SGML-Dokumenttyp, in dem als Elemente verschiedene Präsentationstypen (Buch,Artikel, Unix-Man-Page <strong>und</strong> <strong>ein</strong>e Zusammenstellung von Präsentationen) <strong>und</strong> deren Bestandteile definiertsind.Die zu beschreibenden Bestandteile können Eigenschaften der Präsentationen (Autor, Titel, . . . ), ganzeGliederungs<strong>ein</strong>heiten (Kapitel, Abschnitte, Inhaltsverzeichnisse, . . . ) oder diverse <strong>Layout</strong>-Konstrukte(Listen, Abbildungen, Absätze, . . . ) bis hin zu Inline-Elementen (Fußnoten, Verweise, . . . )s<strong>ein</strong>.Mittlerweile gibt es auch <strong>ein</strong>e XML-Version von DocBook [27].Um Präsentationen zu erstellen, werden die Daten in der DocBook-Syntax formuliert <strong>und</strong> dann mit<strong>ein</strong>em der vorhandenen DSSSL- [15], bzw. XSLT-Stylesheets [42] <strong>und</strong> <strong>ein</strong>em entsprechenden Prozessor(z.B. Jade [10] für DSSSL, oder Saxon [16] für XSLT) in das Zielformat (L A TEX, HTML, XSL-FOu.a.) transformiert.1.3.3. VergleichStellt man den <strong>Ansatz</strong>, den XSL-FO vertritt, also die Beschreibung von physischen Seitenbestandteilen,dem hier zu entwickelnden <strong>Ansatz</strong> gegenüber, so drängt sich der Vergleich von <strong>ein</strong>er Assemblersprache<strong>und</strong> <strong>ein</strong>er höheren Programmiersprache auf. D.h. letztendlich müssen die Präsentationen,die mit dem hier zu entwickelnden <strong>Ansatz</strong> erstellt werden sollen, zwar physisch dargestellt werden,jedoch hängen die layoutbildenden Transformationen, die hier durchgeführt werden sollen, alle vonder Semantik der darzustellenden Daten ab. Die Semantik der Daten kennt XSL-FO jedoch nicht.Daraus folgt, daß XSL-FO zwar durchaus als <strong>ein</strong> mögliches Zielformat (neben LATEX, HTML u.a.)angesehen werden kann, sich jedoch auf k<strong>ein</strong>en Fall dazu eignet, den Prozeß zu beschreiben, mit demdas <strong>Layout</strong> der Präsentationen erzeugt wird.Der <strong>Ansatz</strong> von DocBook stellt sehr generische Konstrukte für die Beschreibung von Präsentationen<strong>zur</strong> Verfügung <strong>und</strong> übernimmt die Entscheidung über die Art <strong>und</strong> Weise, wie diese dargestellt werdensollen, selbst. Einstellungen <strong>zur</strong> physischen Darstellung sind zwar möglich, entsprechen allerdingsnicht unbedingt der Philosophie von DocBook. Hinzu kommt, daß die von DocBook intendiertenPräsentationen Bücher <strong>und</strong> ähnliche Dokumentationen sind, nicht aber St<strong>und</strong>enpläne, Veranstaltungslistenusw. mit f<strong>ein</strong>erer Strukturierung.DocBook könnte im Prinzip <strong>ein</strong>e Anwendung des hier vorgestellten <strong>Ansatz</strong>es s<strong>ein</strong>. DocBook beschreibtXML-Dokumente (bzw. SGML-Dokumente), die Bücher darstellen <strong>und</strong> Transformationen,um <strong>Layout</strong> <strong>und</strong> Style der Bücher zu bilden. Der hier vorgestellte <strong>Ansatz</strong> beschreibt generisch, wie<strong>Layout</strong> <strong>und</strong> Style für beliebige XML-Dokumente gebildet werden können.1.4. AufbauIn Kapitel 2 werden zunächst <strong>ein</strong>ige Besonderheiten des zugr<strong>und</strong>eliegenden Datenmodells erläutert;dies sind zum <strong>ein</strong>en gr<strong>und</strong>legende Konzepte, die nicht nur für den vorliegenden Anwendungsfall von8
1.4. AufbauInteresse sind (Abstraktion, Rekursion <strong>und</strong> Vererbung/Verschattung), <strong>und</strong> zum anderen Lösungen füretwas speziellere Probleme bei der Präsentation von <strong>Lehr</strong>angebotsdaten (Mehrsprachigkeit, unterschiedlicheTexte für unterschiedliche Präsentationen).Der Hauptteil der Arbeit liegt auf der Entwicklung des Präsentations-Erzeugungsprozesses in Kapitel3, der aus den Daten, die in <strong>ein</strong>em beliebigen Datenformat vorliegen (XML, Tabellen <strong>ein</strong>er relationalenDatenbank etc.), Präsentationen in unterschiedlichen Beschreibungssprachen erstellt. DerProzeß besteht aus drei Teilen: Im ersten werden die Daten – wenn nötig – in das XML-Format übertragen<strong>und</strong> nach bestimmten Gesichtspunkten aufbereitet, im zweiten wird das <strong>Layout</strong> der Präsentationaufgebaut <strong>und</strong> im dritten wird das <strong>Layout</strong> mit Styl<strong>ein</strong>formationen angereichert <strong>und</strong> in <strong>ein</strong>e Beschreibungsspracheübersetzt.Daraufhin wird in Kapitel 4 untersucht, welche unterschiedlichen Sprachmittel für <strong>ein</strong>e Implementierungder Komponenten des Präsentations-Erzeugungsprozesses nötig sind <strong>und</strong> welche Sprachen <strong>und</strong>Werkzeuge diese Anforderungen erfüllen.In Kapitel 5 wird die prototypische Implementierung PEP vorgestellt, mit der <strong>ein</strong>e Implementierung<strong>ein</strong>es ver<strong>ein</strong>fachten, durchgängigen Präsentations-Erzeugungspozesses vorgenommen wurde.Ergänzend werden Implementierungsmöglichkeiten in unterschiedlichen Anfragesprachen verglichen.In Kapitel 6 werden mögliche Anküpfungspunkte an diese Arbeit <strong>und</strong> zukünftige technische Entwicklungen,die für die hier gezeigten Ansätze interessant s<strong>ein</strong> könnten, angesprochen.9