XML » SVG Presenter - Carto:net
XML » SVG Presenter - Carto:net
XML » SVG Presenter - Carto:net
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>XML</strong> <strong>»</strong> <strong>SVG</strong> PRESENTER | STRUKTURIERTE MULTIMEDIA-PRÄSENTATION IM WEB 145<br />
<strong>SVG</strong>-Dateistrukturen auch serverseitig zu erzeugen, was aufgrund der <strong>XML</strong>-Eigenschaft der Vektorsprache<br />
im Gegensatz zu Flash 1 auch mit recht einfachen Mitteln möglich ist.<br />
5.4.2.7 <strong>SVG</strong>: The Power of <strong>XML</strong><br />
Die „schöne Tatsache, dass <strong>SVG</strong> <strong>XML</strong> ist“ [Behm02:53] beschert dem geneigten Programmierer an dieser<br />
Stelle jedoch noch weitere Vorteile: So ist nicht nur die Konvertierung, sondern ebenso die direkte Einbettung<br />
externer <strong>XML</strong>-Inhalte und somit eine unbegrenzte Erweiterung des Vektorstandards möglich: Ohne<br />
ein „unüberschaubares Tag-Chaos, wie wir es momentan bei HTML sehen“ [Bosa98] 2 zu provozieren, erlaubt<br />
<strong>SVG</strong> einerseits über die Namespace-Eigenschaft [s. hierzu 6.5.1], andererseits über das so genannte foreignObject<br />
die nahtlose Einbindung beliebiger Fremdobjekte: So wird etwa die derzeit in der <strong>SVG</strong>-<br />
Spezifikation noch fehlende Sound-Funktion im Rahmen des Adobe <strong>SVG</strong>-Viewers momentan durch die<br />
audio-Erweiterung mit eigenem Namensraum provisorisch realisiert [vgl. Kunz00], während das X-Smiles-<br />
Projekt der technischen Hochschule Helsinki [VRKH02] die <strong>SVG</strong>-Elemente kurzerhand in einen SMIL-<br />
Kontext [s.5.5] einbettet und somit die synchronisierte Integration auditiver Elemente ermöglicht [vgl.<br />
Watt02:1045]<br />
Auch die Integration weiterer, sich freilich parallel zum <strong>SVG</strong>-Fortschritt ständig weiterentwickelnder <strong>XML</strong>-<br />
Standards trägt zu einer stetigen Erweiterung des <strong>SVG</strong>-Funktionsspektrums bei: So ermöglicht die <strong>XML</strong> Linking<br />
Language, kurz „XLink“ [DMO01] in ihrer neuesten Fassung etwa weitaus komplexere Link-<br />
Funktionen, als sie derzeit etwa in Form der unidirektionalen -Tags im Web bekannt (und somit<br />
natürlich im Rahmen von <strong>SVG</strong> verfügbar) sind. Da <strong>SVG</strong> nun die althergebrachte, native href-<br />
Verlinkung HTMLs durch den externen XLink-Standard ersetzt und seine Link-Komponente somit modularisiert<br />
hat, steht somit auch <strong>SVG</strong>-Anwendungen die erweiterte Funktionalität des XLink-Frameworks zur<br />
Verfügung, erkennbar beispielsweise an dem separaten XLink-Namensraum aller im Rahmen von <strong>SVG</strong> auftretenden<br />
URIs:<br />
<br />
Listing 5.4.2.4: Definition einer URI-Referenz unter Einbeziehung des externen XLink-Namensraumes.<br />
Zwar kommt in den allermeisten, derzeitigen Fällen der XLink-Anwendung immer noch die althergebrachte,<br />
unidirektionale Fassung „einfacher“ URLs zum Tragen – zumindest prinzipiell sind jedoch bereits jetzt<br />
komplexere Link-Funktionen [vgl. hierzu Mach97] im Rahmen dieses Frameworks möglich. Auch die direkte<br />
Integration weiterer Standards wie XPath, XPointer, 3 XQuery [vgl. Fibi01:4] sowie XForms [vgl.<br />
Watt02:1054], die an dieser Stelle jedoch nicht näher ausgeführt werden sollen, erweitert den <strong>SVG</strong>-<br />
Standard gleich um eine ganze Reihe mitunter recht umfangreicher, komplexer <strong>XML</strong>-Technologien.<br />
5.4.3 Datei-Zugriff<br />
Bei der Betrachtung der eigentlichen „Anwendungen“ der Vektorsprache kommt dem <strong>SVG</strong>-Standard freilich<br />
wiederum die bereits angesprochene <strong>XML</strong>-Eigenschaft zugute: Da <strong>SVG</strong>-Grafiken nichts anderes darstellen<br />
als leicht editierbare Textdateien, ist somit auch der beidseitige Dateizugriff ein Leichtes. Da mit der<br />
standardisierten <strong>XML</strong>-Schnittstellen XSLT und dem DOM-Ansatz [s.5.1] überdies sehr komfortable Frameworks<br />
zur Verarbeitung der <strong>SVG</strong>-Daten bereitstehen, erstaunt es daher nicht, dass bereits unzählige Ansätze<br />
[vgl. Lill99, Schu02] zur Verarbeitung und Konvertierung <strong>SVG</strong>-basierter Grafiken existieren.<br />
1 s. hierzu insbesondere [4.5.3.3]<br />
2 “People who don't understand this distinction tend to jump to the conclusion that an <strong>XML</strong>-aware application will allow them simply to<br />
sprinkle new tags throughout their HTML documents. Attempts to "extend" HTML this way will lead to an even worse mess than we've<br />
already got.” [Bosa98]<br />
3 Syntax: xlink:href="#xpointer(id("anObject")); [vgl. Watt02] p.79