13.07.2015 Aufrufe

ein generischer Ansatz zur Layout-Spezifikation - Lehr- und ...

ein generischer Ansatz zur Layout-Spezifikation - Lehr- und ...

ein generischer Ansatz zur Layout-Spezifikation - Lehr- und ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4. Rahmenbedingungen <strong>ein</strong>er ImplementierungManchmal ist es jedoch von Vorteil, <strong>ein</strong>e Transformation in <strong>ein</strong>er eigenen deklarativen Sprache zuformulieren, entweder weil es k<strong>ein</strong>en Formalismus gibt, mit dem die Transformation klar ausgedrücktwerden kann oder weil noch k<strong>ein</strong> passender Prozessor verfügbar ist. (Ein solcher Fall ist z.B. der<strong>Layout</strong>beschreibungsbaum.)Um diese eigene Sprache anzuwenden, muß sie entweder direkt interpretiert <strong>und</strong> ausgeführt werden,d.h. es muß also <strong>ein</strong> eigener Prozessor für diese Sprache entwickelt werden, oder sie muß in <strong>ein</strong>eandere Anfragesprache übersetzt werden.4.3. Verfügbare Sprachmittel <strong>und</strong> WerkzeugeIn den letzten beiden Abschnitten wurden die Anforderungen an die Sprachmittel <strong>und</strong> Werkzeuge für<strong>ein</strong>e Implementierung untersucht. Nun soll <strong>ein</strong>e Auswahl verfügbarer Sprachmittel <strong>und</strong> Werkzeugevorgestellt <strong>und</strong> verglichen werden. Eine Entscheidung, welche Sprachmittel <strong>und</strong> Werkzeuge für dieImplementierung des Präsentations-Erzeugungsprozesses verwendet werden, wird im nächsten Kapitelgetroffen.4.3.1. Baumbasierte TransformationsspracheIm Folgenden soll <strong>ein</strong> knapper Überblick über <strong>ein</strong>ige Ansätze <strong>zur</strong> Transformation von XML-Dokumentengegeben werden. Die vorgestellten Ansätze sind weder vollständig noch ist ihre Darstellungerschöpfend behandelt, da dies über den Rahmen dieser Arbeit hinausgehen würde.Die Ansätze werden nun zunächst erläutert <strong>und</strong> dann in <strong>ein</strong>em Vergleich in Hinblick auf ihre Verfügbarkeit,der Natürlichkeit bei der Formulierung <strong>ein</strong>er Transformation <strong>und</strong> ihrer Ausdrucksfähigkeitgegenübergestellt.4.3.1.1. XSLTXSLT ist <strong>ein</strong> regelbasierter <strong>Ansatz</strong> <strong>zur</strong> Transformation von XML-Dokumenten, der Ende 1999 vondem W3C als Recommendation 2 , also gewissermaßen als Standard, <strong>ein</strong>gestuft wurde [42].XSLT transformiert <strong>ein</strong> XML-Dokument (source tree) in <strong>ein</strong> beliebig strukturiertes Zieldokument(result tree). Die Transformationsanweisungen dafür werden in <strong>ein</strong>em sogenannten Stylesheet formuliert.Die Stylesheets sind ebenfalls XML-Dokumente, deren Elemente in dem Namensraum http://www.w3.org/1999/XSL/Transform definiert sind.Sie bestehen aus <strong>ein</strong>er Ansammlung von Regeln (template rules), die jeweils aus zwei Teilen bestehen:Einem pattern <strong>und</strong> <strong>ein</strong>em template. Das pattern entspricht dem Selektor <strong>ein</strong>er Anfragesprache, dastemplate dem Konstruktor. Für die <strong>Spezifikation</strong> der pattern wird XPath [37] verwendet.XSLT bietet Variablen an, allerdings entsprechen sie eher Konstanten, da sie fest an <strong>ein</strong>en Ausdruckgeb<strong>und</strong>en sind.Abbildung 4.1 zeigt <strong>ein</strong> Beispiel für <strong>ein</strong> XSLT-Stylesheet. Darin wird <strong>ein</strong>e HTML-Liste mit dem Inhaltaller title-Elemente, die sich in <strong>ein</strong>em section-Element befinden, erzeugt.2 Der Weg zu <strong>ein</strong>er fertigen <strong>Spezifikation</strong> (Recommendation) führt über die Stufen Working Draft (WD), Last Call WorkingDraft, Candidate Recommendation (CR) <strong>und</strong> Proposed Recommendation (PR) hin <strong>zur</strong> Recommendation (REC).44

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!