W3C Amaya vorherige Seite erste Seite

Die Datei HTML.trans benutzen

Dieses Dokument ist eine Einführung zu dem von Amaya bereitgestellten Mechanismus der strukturierten Transformation. Es beschreibt die Syntax der Transformationssprache und wie Transformationen im Editor durchgeführt werden.

Die Datei HTML.trans im Verzeichnis amaya enthält die Beschreibung der Transformationen. Diese Datei wird während einer Sitzung mit Amaya dynamisch geparst wenn die Transformationsprozedur vom Editor aufgerufen wird, sodass neue Transformationen während einer Editiersitzung hinzugefügt werden können. Die Datei kann, während man mit Amaya arbeitet, editiert werden.

Warnung: Da die Beschreibung der Transformationen HTML-Tags enthalten kann, sollte diese Datei nicht mit Amaya editiert werden. Man muss irgend einen anderen Editor benutzen.

Syntax der Transformationssprache

Kommentare beginnen mit ! und gehen bis zum Zeilenende.

Die Datei enthält eine Liste von Transformationsbeschreibungen. Jede Transformation wird durch drei Teile beschrieben:

Der Name erscheint im Menü Transformation und identifiziert die Transformation.

Das Muster

Das Muster beschreibt die spezifische Organisation der Elemente, welche transformiert werden sollen. Es agiert als Filter über der DTD von HTML. Der Zweck des Musters ist eine spezielle Kombination von Elementen zu identifizieren auf die die Transformation angewendet werden kann. Mit einem Muster ist es möglich Bedingungen für die Sequenz von Tags, den Inhalt eines Tags oder die Existenz eines Wertes oder Attributs anzugeben.

Formal enthält ein Muster einen HTML-Tag (möglicherweise mit Attributen) und Operatoren:

| Auswahl (oder)

, Geschwister

+ Sequenz

? Option

( ) Gruppierung von Knoten

Die Klammern { } definieren den Inhalt eines Knotens.

Das Symbol * ist ein Token, welches auf jedes Element zutrifft.

Es ist möglich ein Tag umzunennen, indem man ihm einen Namen, gefolgt von einem Doppelpunkt (:). voranstellt

Das Tag kann Attribute haben. Ist kein Wert angegeben, dann trifft ein Element zu, wenn es das entsprechende Attribut hat. Ist ein Wert für ein Attribut angegeben, dann trifft ein Element zu, wenn das entsprechende Attribut vorhanden ist und den entsprechenden Wert hat.

Beispiele von Mustern findet man am Ende des Dokuments

Die Regeln

Eine Regel besagt, wie die, durch ein Muster identifizierten Elemente transformiert werden. Eine Regel besteht aus zwei Teilen, die durch das Symbol > getrennt sind:

Die Liste selbst besteht aus zwei, durch einen Doppelpunkt (:) getrennten Teilen:

Der Pfad wird im äußersten linken Ast des Dokumentenbaums gesucht und zwar vom Elternelement des Elements welches dem obersten Symbol im Suchmuster entsprach.

In der Tagliste wird der Punkt (.) benutzt um in der Baumstruktur hinabzuwandern

Wenn das Symbol Stern (*) am Ende der zu generierenden Tagliste steht, so wird das ursprüngliche Tag nicht verändert, kann aber an eine andere Stelle verschoben werden.

Taucht ein Tag oder ein Name im linken Teil der Regel mehrmals in einem Muster auf, dann transformiert die Regel alle die Elemente, welche im Muster vorkommen.

Der Transformationsprozess

Wählt der Benutzer den Befehl Transformiern aus dem Menü Bearbeiten, dann parst Amaya die Datei HTML.trans. Danach werden die markierten Elemente mit dem Muster jeder Transformation gesucht. Die Namen der gefundenen Transformationen werden dem Benutzer in einem Popup-Menü angezeigt.

Treffen mehrere Transformationen mit gleichem Namen auf die markierten Elemente zu, dann wird die Transformation auf der obersten Ebene dem Benutzer angezeigt. Treffen mehrere Transformationen auf der gleichen Ebene zu, dann wird die erste in der Datei HTML.trans gefundene genommen. Daher sollte man spezifische Muster vor den allgemeinen anlegen.

Nachdem eine Transformation vom Benutzer ausgewählt wurde, wird die Zielstruktur gemäß den Regeln erstellt, indem die markierten Elemente transformiert werden.

Am Ende wird der Inhalt der zu transformierenden Elemente (Text, Bilder, aber auch strukturierte Elemente) in die transformierten Elemente verschoben.

Der Transformationsprozess für HTML-Elemente ist vollständig in Interactively Restructuring HTML Documents beschrieben, ein Dokument, welches auf der fünften internationalen WWW-Konferenz in Paris im Mai 96 von Cécile Roisin und Stéphane Bonhomme vorgestellt wurde.

Beispiele:


Stéphane Bonhomme
Date: 2002/03/28 15:00:17