20.01.2013 Aufrufe

XML » SVG Presenter - Carto:net

XML » SVG Presenter - Carto:net

XML » SVG Presenter - Carto:net

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.

<strong>XML</strong> <strong>»</strong> <strong>SVG</strong> PRESENTER | STRUKTURIERTE MULTIMEDIA-PRÄSENTATION IM WEB 180<br />

<br />

<br />

<br />

Web-based Presentations | <strong>XML</strong> &#xbb; <strong>SVG</strong> <strong>Presenter</strong><br />

Till Voswinckel<br />

...<br />

<br />

<br />

...<br />

<br />

<br />

<br />

<br />

Listing 6.5.1.4: Einbindung<br />

der <strong>XML</strong>-Präsentationsdaten in das <strong>SVG</strong>-Dokument.<br />

Auf diese Weise kann die DOM-Eigenschaft des <strong>SVG</strong>-ECMAScript-Parsers auch zur Analyse der <strong>XML</strong>basierten<br />

Präsentationsdaten sozusagen „missbraucht“ werden [s. hierzu etwa die entsprechenden „addNameSpace“-Verweise<br />

in Listing 6.5.1.3] und somit auch die „triviale“ Formatkomponente des <strong>XML</strong> <strong>»</strong> <strong>SVG</strong><br />

<strong>Presenter</strong>s zur Weiterverwendung in ECMAScript, der Überführung in <strong>SVG</strong> und deren letztendlichen Dar-<br />

stellung im Rahmen der <strong>SVG</strong>-Viewer-Umgebung konsequent zur Anwendung kommen. Die Speicherung<br />

und Analyse der Präsentationsdaten in Form einer externen <strong>XML</strong>-Datei stellt zwar die aus struktureller Sicht<br />

„sauberste“ Lösung dar, wird jedoch nach [Watt02:1042] erst im Zuge der Einführung einer DOM Level-3-<br />

Implementierung [vgl. DOM02] verfügbar sein. Obgleich auch die parse<strong>XML</strong>()-Funktion des Adobe <strong>SVG</strong>-<br />

Viewers ähnliche, externe Parsing-Funktionen bereitstellt [vgl. Quin02], allerdings derzeit ausschließlich im<br />

Rahmen der letztgenannten Viewer-Umgebung ablauffähig ist und dadurch eine architektonisch „einengende“,<br />

proprietäre Lösung darstellen würde, erfüllt bis dahin somit das soeben dargelegte „Work-Around“<br />

diese Funktion in durchaus zufrieden stellendem Umfang.<br />

6.5.2 Grafik-Framework<br />

Freilich kommen die überzeugenden, skript-bezogenen DOM-Funktionen der <strong>SVG</strong>-Umgebung im Rahmen<br />

der <strong>Presenter</strong>-Realisierung nicht ausschließlich zu derart missbräuchlichen<br />

Zwecken, sondern natürlich auch<br />

durchaus in deren ursprünglichen Sinne zur Anwendung: Im großen und ganzen lässt sich das zur Echtzeit<br />

durch ECMAScript vorgenommene grafische „Rendering“, d.h. bei <strong>SVG</strong> vielmehr das Verändern des sichtba-<br />

1<br />

ren <strong>SVG</strong>-Dokumentenbaumes, in zwei Kategorien unterteilen:<br />

� Ein Amimations-Framework (AniObject sowie AniTracker) sowie<br />

� Anzeige der Präsentations-Baumhierarchie durch “Auf- und Zuklappen“ der einzelnen Unter-<br />

Ebenen ( expand und collapse)<br />

Vor Betrachtung der einzelnen Komponenten stellt sich jedoch zunächst einmal<br />

die berechtigte Frage, inwieweit<br />

denn die Anwendung der ECMAScript-E ngine für derartige Zwecke überhaupt notwendig und<br />

sinn voll ist – schließlich stellt die <strong>SVG</strong>-Spezifikation [<strong>SVG</strong>01] selber bereits mit und <br />

durchaus mächtige und überdies der standardisierten SMIL-Semantik entsprechende Funktionalität sowohl<br />

2<br />

zur Animation (was ein Animations-Framework ja prinzipiell unnötig machen würde) als auch zum Verändern,<br />

Anzeigen und Verstecken einzelner Elemente bereit. Diese separate Realisierung dieser Funktionen<br />

durch ein gesondertes Script-Framework liegt freilich im Detail der soeben angesprochenen SMIL-<br />

Funktionalität begründet: So ist es zwar durchaus möglich, Animationen und Objektveränderungen von<br />

1 Genauer bedeutet dies: Nicht das Script selber erzeugt die Ausgabe, sondern stets die <strong>SVG</strong>-Umgebung selber – bei Änderung des <strong>SVG</strong> -<br />

Dokumentenbaumes aktualisiert die Viewer-Enginge automatisch die Darstellung.<br />

2 Dies umfasst freilich ebenso die Derivate , sowie

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!