Innerhalb dieser Diplomarbeit geht es darum, ein System zu entwickeln, das es erlaubt, umfangreiche Texte möglichst einfach im World Wide Web zu veröffentlichen, und das dem Leser gestattet, auf diese Texte in für ihn angenehmer Weise zuzugreifen. Um diese abstrakte Aufgabe zu erfüllen, gibt es zahlreiche existierende Wege, die verschiedene Schwächen aufweisen. Diese Schwächen möchte ich kurz ansprechen; daraus leiten sich dann die Anforderungen an diese Arbeit ab.
Für die Veröffentlichung umfangreicher Texte gibt es zwei Herangehensweisen: Man kann die Texte zusammenhängend, etwa in PostScript oder PDF, anbieten. In diesem Fall hat man ein für den Druck geeignetes Format und nutzt das Web lediglich als Transportmedium. Die andere Möglichkeit besteht in der Aufbereitung eines Textes in eine web-taugliche Form. Allein wegen der beschränkten Bandbreite heißt das in der gegenwärtigen Praxis, das Dokument in mehrere Teile zu teilen (z.B. einzelne Kapitel) und über Hyperlinks das Blättern zwischen den Teilen zu ermöglichen. Je nach dem, welche Eigenschaften das Ausgangsformat hat, ist diese Aufbereitung entweder aufwendig oder schlecht (z.B. ist die Speicherung von Word-Texten als HTML qualitativ nicht sehr gut). Der Grund für die geringe Qualität ist meistens die Tatsache, daß Texte speziell für den Ausdruck (in einem bestimmten Format, etwa A4) vorbereitet werden. Texte, die Informationen über ihre Struktur und weitere Metainformationen beinhalten, lassen sich besser medienunabhängig behandeln. Damit ist die erste Randbedingung für das zu entwickelnde System gefunden: Das System soll mit strukturierten Texten umgehen können.
Um lange Texte zu lesen, bevorzugen die meisten Menschen die ausgedruckte Form. Ein Vorteil beim Online-Publishing besteht in der Möglichkeit, Texte durchsuchen zu können, um gewünschte Ausschnitte schneller zu finden. Der übliche Ansatz der Volltextsuche besitzt den Nachteil, daß häufig zu viele und unerwünschte Textstellen gefunden werden. Ist man beispielsweise auf der Suche nach dem Programmierbefehl »print«, so sind Rezepte für Aachener Printen und Texte über Print-Medien sicherlich nicht gewünscht. Das Problem besteht darin, daß man zwar den Suchbegriff angeben kann, nicht jedoch die Suchkategorie (hier: Begriff »print«, Kategorie »Befehle von Programmiersprachen«). Die Ursache dafür ist, daß Texte meistens eben keine Metainformationen (wie die Kategorie) enthalten. Da ich oben bereits vorausgesetzt habe, daß Texte solche Metainformationen enthalten müssen, folgt die zweite Anforderung an das zu entwickelnde System: Die Suche soll keine simple Volltextsuche sein, sondern innerhalb einer vom Benutzer ausgewählten Kategorie stattfinden (»qualifizierte Suche«).
Die Frage ist nun: Was soll als Ergebnis geliefert werden? Wenn der Suchvorgang nur als Antwort liefert, ob der Begriff in der richtigen Kategorie in einem bestimmten Text gefunden wurde oder nicht, ist das Ergebnis mit den bekannten Suchmaschinen vergleichbar: Statische Texte werden auf einem Webserver angeboten und ausgeliefert. Diese Vorgehensweise berücksichtigt aber in keiner Weise, an welcher Stelle sich der gefundene Begriff befindet. Es wäre doch besser, das Ergebnis davon abhängig zu machen. Natürlich sollte nicht nur das gefunden Wort zurückgeliefert werden, sondern eine bestimmte Umgebung des Wortes. Die Umgebung sollte so beschaffen sein, daß der Text darin verständlich bleibt. Wenn der Leser dann diesen Ausschnitt als Ergebnis bekommt, trifft das seine Wünsche besser. Das ist die dritte Anforderung: Das Ergebnis einer Suche soll ein möglichst sinnvoller Ausschnitt aus dem Dokument sein.
Was fängt man mit gefundenen Textausschnitten an, die das Ergebnis von mehreren Suchvorgängen sind? Irgendwie müssen die Ausschnitte zusammengefaßt werden: Der Benutzer soll die Möglichkeit bekommen, sich ein »eigenes«, neues Dokument aus mehreren Ausschnitten zusammenzustellen.
Die bisherigen Fragestellungen orientierten sich an der Benutzersicht. Auch für den Webadministrator beziehungsweise den Verfasser von Texten sollte die Aufgabe erleichtert werden. Was kann man tun, um nicht für jeden einzelnen Text immer wieder den gleichen Aufwand betreiben zu müssen? Welche Gemeinsamkeit von Texten kann man verwenden? Die Antwort lautet einmal mehr: die Strukturinformation. Durch eine gemeinsame Struktur wird ein Dokumenttyp definiert, der Eigenschaften von Dokumenten beschreibt. Unter Ausnutzung dieser Eigenschaften gelangt man zur letzten Anforderung: Die Definition eines Dokumentausschnitts, der Ergebnis einer Suche ist, soll mit Bezug auf den Dokumenttyp (z.B. Lehrbuch, Handbuch, Bedienungsanleitung, Brief, Artikel usw.) geschehen, um viele gleichartige Dokumente mit möglichst geringem Aufwand publizieren zu können.
Die Anforderungen lassen sich stichpunktartig wie folgt zusammenfassen. Zentrale Bedeutung haben dabei die beiden ersten Punkte.
Als weitere Randbedingungen und Wünsche sind folgende Punkte zu nennen:
Als Anwendung für diese Diplomarbeit wurde Textmaterial im Umfang zweier Bücher zur Verfügung gestellt. Bei dem Material handelt es sich um volkswirtschaftliche Texte über makroökonomische Modelle. Ein Hindernis bestand darin, daß die Dateien im Format der Macintosh-Textverarbeitung WriteNow oder alternativ im Rich Text Format (RTF) vorlagen. Die angesprochene implizite Struktur fand sich leider in keiner Weise in den Auszeichnungen der Texte wieder, die sich ausschließlich auf Attribute beschränkten, die der Formatierung und visuellen Darstellung dienen. Teil meiner Diplomarbeit war es also auch (neben der Hauptaufgabe, ein System zu entwickeln, das die obigen Anforderungen erfüllt), das vorliegende Material auf strukturelle Einheiten zu analysieren und Auszeichnungen zu entwerfen, die die Struktur darstellen. Selbstverständlich sollte das zu entwickelnde System aber mit beliebigen Texten arbeiten, solange sie nur geeignet ausgezeichnet sind.
Für das gegebene Textmaterial sieht der Lösungsansatz so aus, daß es einmalig in die SGML-Struktur überführt wird und diese dann als Basis für die weitere Editierung und für die Veröffentlichung im Web (vgl. Abbildung 1) dient.

Abbildung 1: Der Ansatz zur Behandlung der gegebenen Texte: einmalige Umwandlung in SGML und darauf aufbauende Verarbeitung
Die Aufgabe der Konvertierung von umfangreichen Texten von RTF in SGML ist zwar keineswegs einfach1, stellt jedoch nicht den Kern der Diplomarbeit dar. Von zentraler Bedeutung ist der Entwurf und die Implementation des Systems zur Publikation im Web. Bei der Entwicklung habe ich zunächst verschiedene Sichtweisen des Web-Publishing betrachtet (vgl. Abbildung 2).

Abbildung 2: Sichtweisen des Web-Publishing
Eine Sichtweise ist das Hypertextmodell, in dem Dokumentteile als Knoten eines Graphen repräsentiert sind. Die Kanten des Graphen stellen Navigationspfade dar, die der Leser verfolgen kann. Die Aufgabe, die sich dem Verfasser eines Hypertextes stellt, ist, jedem Leser die »optimale« Navigation durch seinen Text zu erlauben. Für die meisten Schreiber ist es schon anstrengend genug, einen guten sequentiellen Text zu verfassen2. Aus diesem Grund sollte der Autor nicht damit belastet werden, den höheren Aufwand des Hypertextentwurfs leisten zu müssen, weshalb ich die Hypertextsichtweise zurückgestellt habe. Dennoch kann man einen Vorteil des Hypertextes nicht bestreiten: Der Leser ist in der Lage, sich seinen eigenen Text(ablauf) konstruieren zu können. Dies macht er einfach dadurch, daß er einigen Pfaden folgt, anderen nicht. Diesen Vorteil mit der Anforderung zu vereinen, dem Autor zu erlauben, seinen gewohnten sequentiellen Schreibstil einzusetzen, ist ein Ziel des im Rahmen dieser Diplomarbeit entwickelten Systems. Zu dessen Erreichen bekommt der Leser die Möglichkeit, Dokumentausschnitte zu einem neuen Text zusammenzufügen.
Die Gemeinsamkeit beider Ansätze ist, daß ein Leser einen Text stets sequentiell aufnimmt. Unterschiedlich ist nur die Auswahl der gelesenen Textausschnitte. Ein weiterer Unterschied ist, daß beim allgemeinen Hypertext keine kanonische Reihenfolge existiert, sobald der Grad der Verknüpfung hoch genug ist. Im Gegensatz dazu gibt es etwa bei einem Buch immer eine kanonische Reihenfolge, die durch die Anordnung der Seiten festgelegt ist. Bei dem hier verfolgten Ansatz bleibt die »richtige Reihenfolge« der Dokumentausschnitte erhalten. Wenn also einmal die Ausschnitte bekannt sind, ist der Schritt des Zusammenfügens einfach: Die Ausschnitte werden in ihrer ursprünglichen Ordnung aneinandergereiht. Dies betrifft die im letzten Abschnitt genannte Anforderung 3.
Die Anforderung der qualifizierten Suche gehe ich hier in einer Form an, die ich zuvor schon angedeutet habe. Der Benutzer kann Begriffe in vorgegebenen Kategorien suchen. Diese Kategorien werden unter Berücksichtigung der Struktur des Textes definiert. In der Praxis könnte das zum Beispiel so aussehen, daß der Benutzer »einen Brief an Herrn Müller« finden möchte und dazu in der Kategorie »Adressat« den Namen »Müller« eingibt. Hinter den Kulissen hat der Administrator festgelegt, daß die Zeichenkette »Müller« im Element »Nachname« gesucht wird, welches sich im Element »Adressat« befindet, das im Element »Brief« enthalten ist.
Bei der Frage, welcher Ausschnitt zu einer bestimmten Stelle des Dokuments zurückgeliefert werden soll, greife ich noch einmal auf die Struktur zurück. Mein System schafft die Möglichkeit, zu einem Element eine strukturelle Umgebung zu definieren, die als zugehöriger Ausschnitt angezeigt wird. So könnte man in Fortsetzung des obigen Beispiels zwei Kategorien definieren: »Briefe an einen bestimmten Adressaten« und »Adresse eines bestimmten Adressaten«. In beiden Fällen erfolgt die Suche nach dem Namen des Adressaten. Im ersten Fall wird jedoch der gesamte Brief als Ergebnis geliefert, im zweiten Fall nur die Adresse.
Die Ausführungen bis zu diesem Punkt haben einen Eindruck von dem entwickelten System, das den Namen IP4W3 (Intelligent Publishing for the World Wide Wide) bekommen hat, vermittelt. Zum Abschluß der Einleitung möchte ich kurz den weiteren Aufbau der Diplomarbeit vorstellen.
Im folgenden Kapitel 2 gebe ich eine kurze Einführung in die Konzepte und Begrifflichkeit der Techniken, die ich bei der Realisierung meines Programmsystems eingesetzt habe. Dies ist notwendig, da ich innerhalb dieser Diplomarbeit durchgängig die Terminologie verwende, die im SGML-Standard [ISO86] bzw. in der XML-Spezifikation [W3C98D],[W3C98J] benutzt wird. Des weiteren benutze ich an Stellen, die die Formatierung betreffen, Begriffe aus DSSSL [ISO96B]. Der zweite Teil des Kapitels ordnet meine Entwicklung in die Palette der bestehenden Lösungen ein und versucht den Sinn meiner Arbeit herauszustellen3.
Das anschließende Kapitel beschreibt das gesamte System und seine Komponenten. Ich gehe dabei zwar in die Tiefe, verzichte an dieser Stelle aber auf Implementationsdetails oder auf Details zur Konfiguration.
Kapitel 4 zeigt eine Anwendung von IP4W3. Dabei nehme ich sowohl die Sichtweise des Systembetreuers als auch den Standpunkt des Benutzers ein. Am Ende dieses Kapitels sollte es dem Leser möglich sein, den Zweck und den praktischen Nutzen meines Programmsystems zu beurteilen.
Das folgende Implementationskapitel zeigt, wie ich die zuvor beschriebenen Funktionen realisiert habe. Dazu gehört an einigen Stellen auch eine Beschreibung der Entscheidungsprozesse, die ich durchlaufen habe, bevor ich eine bestimmte Lösung gewählt habe.
In Kapitel 6 zeichne ich die Schritte nach, die zur Umwandlung der gegebenen Textdaten in SGML nötig waren. Für die Funktionsweise meines Programms spielt dies zwar keine Rolle, so daß die Beschreibung auch in einem Anhang ihren Platz finden könnte, jedoch halte ich die ausschlaggebende Motivation, die von dieser Anwendung ausging, für Grund genug, ihr einen Platz im Hauptteil einzuräumen.
Das abschließende Kapitel 7 diskutiert einige Verbesserungen und Erweiterungen, die an IP4W3 durchgeführt werden können.
Im Anhang A sind Bedienungsanleitungen für die ausführbaren Programme von IP4W3 zu finden (Manualseiten). Der folgende Anhang enthält DTDs und Stylesheets, die ich im Rahmen dieser Arbeit geschrieben habe.
| 1 | Da es sich um eine sogenannte »up-translation« (auch: »up-conversion« oder »upward-transformation«) handelt, bei der fehlende (Struktur- und logische) Information hinzugefügt werden muß. |
| 2 | Jeder Diplomand wird das wissen. |
| 3 | Um es marktgerecht zu formulieren: Ich versuche Alleinstellungsmerkmale anzuführen. |
