In diesem Kapitel gilt es zu untersuchen, ob es bereits Entwicklungen auf dem Gebiet der SGML verarbeitenden Sprachen gibt, die von Interesse sind. Den Ansatz der Document Style Semantics and Specification Language DSSSL wird im Anschluß vorgstellt.
Grundlagen
DSSSL ist eine Sprache zur Spezifizierung von Formatierung und
anderer Transformationen von SGML - Dokumenten, wobei die Umsetzung von
SGML - Dokumenten bezüglich unterschiedlicher Document Type Definitions
im Vordergrund steht. Dabei sollen sowohl elektronische Medien als auch Papier als Ausgabemedien möglich sein.
Durch SGML wird die Repräsentation der Dokumentstruktur
standardisiert, wobei Benutzern die Möglichkeit eingeräumt wird,
ihre eigenen Darstellungsmittel zu definieren. DSSSL wurde geschaffen, um
diese Applikationen zu unterstützen, indem eine standardisierte
Architektur für Formatierungen entwickelt wurde.
Eine DSSSL - Spezifikation steht außerhalb des SGML - Dokuments, auf diese
Art können mehrere Spezifikationen zu einem Dokument existieren,
wodurch dieselben Daten ganz unterschiedlich dargestellt werden können.
Zum vollständigen Dokumentenaustausch von SGML - Dokumenten gehören
also folgende Bestandteile:
In SGML wird die formale Beschreibung eines Dokuments unterstützt, wobei die logischen Elemente und ihre Struktur geräteunabhängig sind. Die Darstellung des Dokuments wird dann vollständig systemabhängig verwirklicht. Mithilfe von DSSSL soll nun eine Beschreibung des Dokuments möglich sein, die ebenso geräteunabhängig ist wie das SGML - Dokument.
Die Weiterbearbeitung des Dokuments erfolgt dann in zwei Schritten.
Zunächst wird mit Hilfe des SGML Tree Transformation Process STTP die Struktur des vorhandenen SGML - Dokuments modifiziert. Dabei kann der STTP vorhandene Markierung erkennen und verschieben, sammeln oder löschen, abhängig von den Angaben des Bearbeiters. Hieraus folgt, daß das Ausgabedokument in starkem Maße von der vereinbarten DTD abweichen kann.
Anschließend wird mit dem SGML Tree Formatting Process STFP das aus der STTP entstandene Dokument formatiert.
Eine Übersicht zu dem Konzept von Dsssl erklärt
die Funktionsweise von Dsssl.([1]
)

Problematik
Das größte Problem von DSSSL ist bereits im Konzept enthalten, da
es so allgemein wie möglich, also für alle denkbaren Problemstellungen
konzipert ist. Dazu kommt noch, daß DSSSL bislang nur als Entwurf vorliegt,
als Draft International Standard DIS
([10]). Für den Anwender ist daher
die Erstellung einer DSSSL - Spezifikation kaum möglich.
Der riesige Umfang von DSSSL führt nun zur Entwicklung von DSSSL Lite, wobei folgende Aspekte, hauptsächlich resultierend aus den vorhandenen
Schwächen von DSSSL, verbessert werden.
DSSSL Lite muß komplex genug sein, um SGML - Dokumente vernünftig
darstellen zu können. Dabei muß DSSSL nicht alle Darstellungsarten
unterstützen, die irgendwie denkbar wären. Um sich durchsetzen zu
können, muß es einfach genug sein.
Zusätzlich dazu sollte es die Möglichkeit geben, sowohl selber die Style Sheets zu verändern, als auch für ungeübtere Benutzer einenEditor zu haben, der die Syntax selbständig liefert.
Der STFP - Anteil von DSSSL wird reduziert. Dabei geht es nicht nur darum, gewisse Bestandteile einfach zu streichen. Beim Entfernen sehr spezieller Bestandteile, muß die Möglichkeit bestehen aus den übriggebliebenen Merkmalen, die viel allgemeiner gehalten werden, die entfernten Merkmale wieder zusammenzusetzen. Es geht also nicht darum, die Funktion einzuschränken, sondern zu verallgemeinern, da davon ausgegangen wird, daß nicht alle denkbaren Präsentationsmerkmale tatsächlich Verwendung finden werden.
DSSSL Lite ist als konforme DSSSL - Applikation konzipiert. Es sollen dabei einige Aspekte vereinfacht werden, um in absehbarer Zukunft eine funktionsfähige Anwendung zu erreichen, die durch die Komplexität von DSSSL kaum möglich wäre.
In DSSSL Lite soll ein Minimalanteil von typographischen Merkmalen vorhanden
sein, die zur Online - Anzeige von SGML - Dokumenten gewöhnlich Verwendung
finden. Dabei ist nun ein Vorschlag von Teilnehmern der SGML - Konferenz 1994
entstanden,
folgende Bestandteile aus DSSSL zu extrahieren, um DSSSL Lite zu erhalten.
(Frei übersetzt aus [13])
Arena
Arena - der Browser
Ein weiterer Ansatz, die Layoutregeln von der logisch/strukturellen
Beschreibung zu trennen, ist die neueste HTML - Version HTML 3.0 mit dem
dazugehörenden Browser Arena, der vom World Wide Web Consortium
[17] entwickelt wurde.
Da bisherige
Browser nur unzureichend die Elemente von HTML+, dem Vorgänger von
HTML 3.0, darstellen konnten, wurde parallel zur Entwicklung von HTML 3.0
auch ein weiterer Browser entworfen. Dieser Browser ist nicht mit der
vollständigen Funktionalität der anderen gängigen Browser,
wie Netscape oder Mosaic ausgestattet, sondern wurde zum Austesten von
HTML 3.0 geschrieben.
David Raggert hatte zunächst einen Browser implementiert, mit dem
Dokumente in HTML+ dargestellt werden konnten. Als sich dann HTML 3.0
aus HTML+ entwickelte wurde Arena als Browser für diese Sprache
geschrieben. Die Autoren sind Dave Raggett, Hakon W Lie, Henrik Frystyk und
Phill Hallam - Baker. Seit 1994 ist Arena funktionsfähig, wurde aber
seitdem ständig weiterentwickelt. So wurde mittlerweile ein
experimenteller Style Sheet - Mechanismus implementiert.
HTML 3.0
HTML 3.0 ist eine Erweiterung des vorherigen Standards HTML 2.0, und
basiert ebenso auf SGML. Grundsätlich wurde an der Funktionalität
nichts verändert, auch weiterhin wird die Darstellung der Dokumente
den Fähigkeiten der einzelnen Browser und Hardwareumgebung
überlassen. Jedoch gibt es in HTML 3.0 einige Erweiterungen, die
vor allem für Veröffentlichungen im Bereich von Universitäten
sehr wichtig sind.
HTML 3.0 unterstützt zum Beispiel Fließtext um Graphiken herum.
Außerdem werden noch Möglichkeiten zur Darstellung von
Formularen, Tabellen und mathematischen Gleichungen zur Verfügung
gestellt. Neben diesen Erweiterungen der Funktionen werden auch
Einflußmöglichkeiten auf das Layout gewährleistet.
Das Layout eines Dokuments kann durch sogenannte Style Sheets
vorherbestimmt werden.
HTML Style Sheets
Ein Style Sheet steht bei HTML 3.0 zu Beginn des HTML - Dokuments.
Zu jedem Dokument kann es so ein eigenes Style Sheet geben. Solange
der Browser Arena kein eigenes Style Sheet findet, verwendet es das
Style Sheets des Anfangsdokuments weiter.
Hier ein Beipiel eines Style Sheets für ein Dokument:
# Das ist ein Versuch Arena mit HTML 3.0 zu verwenden h1: align=right h1: color.text=#FF00FF h1: color.background=#F0F000 h1: margin.left=0 h1: margin.right=10 h1: margin.bottom=5 ul: indent = 40 ul: align=center ul: color.text=#FF0000 math: color.text=#000000 math: color.background=#517CFE h2: align=left h2: color.text=#517CFE h2: color.background=#FFFFFF h3: color.text=#900000 h3: align=center b: color.text=#FE5CD9 b: color.background=#CBB5FF p: color.text=#000000 p: color.background=#517CFE table: align=right
Hiermit werden Layoutregeln beschrieben für ein
Beispiel - Dokument, welches man am besten mit
dem Browser Arena anschauen sollte, da alle gängigen
Browser viele der Anweisungen nicht ausführen können.