Beispiele und Tests zur Animation mit SVG

Testergebnisse und Anzeigewahrscheinlichkeit

Testergebnisse

Tests wurden zumeist mit verfügbaren Darstellungsprogrammen auf Debian-Linux durchgeführt. Getestet sind Amaya, KSVG 1 von KDE, ein plugin für den browser Konqueror, das Adobe plugin (Die aktuelle und einzige Version ist immer noch 3.01 beta 3 vom 2003-12; Adobe hat die Entwicklung dieses plugins Ende 2006 eingestellt, ohne jemals eine endgültige Version für Linux veröffentlicht zu haben) und Squiggle/Batik 1.7 (2008-01-09; läuft auf sun-java 1.6).

Opera interpretiert SVG seit Version 8.02 (SVG tiny, ab Version 9 auch mehr).

WebKit kann auch SVG darstellen. Bedauerlich für Tests und die Zuverlässigkeit des Verhaltens ist die komplexe Abhängigkeit von Bibliotheken und diversen Umständen. Die Beobachtung auf meinen Linux-Rechnern ist, daß Darstellungsprogramme, die diese Bibliothek verwenden, sehr unzuverlässig sind. Das ist sehr bemerkenswert, denn Konqueror und KSVG, von denen WebKit abgezweigt wurde, sind viel zuverlässiger.
Daher habe ich anfangs nur stichprobenartige Tests durchgeführt, wobei ich Arora 0.4 (WebKit/523.15), Konqueror4.1 (alternative Ansicht mit WebKit/523.15), Safari 3.2.1 (WebKit 525.27.1) und Google Chrome 1.0 (WebKit 525.19) verwendet habe, mit dem Ergebnis, daß die Programme keine Animation unterstützen. Safari 4 beta (WebKit 528.16) interpretiert einiges an Animation und wird getestet. Es gibt keinen großen Unterschied in Safari 4.

Google Chrome 4.0 (für Linux) behauptet, WebKit/532.5 zu verwenden - allerdings ist die Unterstützung von SVG komplett korrumpiert (keine Anzeige von alleinstehenden Dokumenten, bestenfalls kommt ein 'missing plugin') - was ist zwischen Version 1 und 4 passiert? Nur Rückschritte? Ein Test mit der stabilen Version 9 zeigt auch, daß dieses Darstellungsprogramm nicht mehr in der Lage ist, SVG darzustellen, zumindest auf einem Rechner, auf einem anderen klappt es bei gleicher Installation.
Wie ich 2011-03 entdeckt habe, läßt sich das Problem vermeiden, indem unter 'chrome://plugins/' alles deaktiviert, was mit plugins allgemein oder mit solchen für SVG zu tun hat.

Mit dem Erscheinen von Debian 6 Anfang 2011 bot sich die Gelegenheit, diverse Darstellungsprogramme zu testen, die ebenfalls eine WebKit-Bibliothek verwenden. Leider stellte sich heraus, daß Epiphany, Midori und Kazehakase, welche die GTK-Bibliothek libwebkit (WebKit 531.2) verwenden, ganz allgemein kein XML darstellen können (sie stellen typisch falsche Fehlermeldungen dar) und speziell kein SVG. Kazehakase kann nicht einmal HTML darstellen.
Die browser Arora, rekonq und Konqueror 4 (kpart WebKit Alternative) verwenden die QT4-Bibliothek libqt4-webkit (WebKit 532.4). Wenigstens stellen sie XML allgemein dar, auf einem Computer SVG ebenfalls, auf einem anderen gibt es entweder in Arora keine Anzeige von SVG oder Abstürze bei jedem SVG bei den anderen Darstellungsprogrammen.
Wie ich 2011-03 entdeckt habe, läßt sich das Problem zumindest bei Arora vermeiden, indem unter 'Tools - Options - Privacy' 'Enable Plugins' deaktiviert wird.

Chromium 6 behauptet, WebKit 534.3 zu verwenden. Dies Programm kann kein XML darstellen (nur falsche Fehlermeldungen) und vermißt ein plugin, um SVG darzustellen, ähnlich wie Google Chrome kann es SVG nicht selbständig darstellen.

Bei Mozilla Gecko ist Animation in den Versionen 1.8.x, 1.9.1 nicht verfügbar, aber in den Vorversionen von firefox 3.7, entsprechend Gecko 1.9.3a1pre. Mit Version 2.0 ist Animation verfügbar.

MSIE (microsoft internet explorer, bis Version 8.0) interpretiert gar kein SVG. Abhängig von den Systemeinstellungen werden SVG-Dokumente direkt an Inkscape oder Opera weitergereicht (andere Programme oder plugins sind auch möglich). Version 9 interpretiert SVG, animiert es aber immer noch nicht.

Andere Programme wie Gimp, Imagemagick, Inkscape, Sodipodi, Sketch, Renesis player sind natürlich auch nutzbar, aber die unterstützen bislang keine Animation.

Zusätzlich wurden die Stichproben mit dem Prüfprogramm (Validator) von W3C getestet. Das bedeutet, die Beispiele haben die Prüfung bestanden, es handelt sich also um einen Test der Dokumente, nicht des Prüfprogrammes. Allerdings prüft dieses Programm nicht die Werte aller Attribute und mit diesem Test ist nicht garantiert, daß die Beschreibungen zu den Beispielen korrekt sind.
Anbieter anderer Darstellungsprogramme möchten ihre Produkte eventuell ebenfalls hier getestet haben. Dies kann ich tun, wenn ein (stabiles) Debian-Programmpaket angeboten wird. Ein einfach zu installierendes statisches tar.gz (komprimiertes Archiv) mag ebenfalls funktionieren. Seit 2009-01 ist windows vista ebenfalls verfügbar.
Sollte jemand Fehler finden oder Abweichungen zwischen den Beschreibungen und den Dokumenten, bitte ich darum, mir diese unverzüglich zur Kenntnis zu bringen.

Die Ergebnisse für jedes Attribut oder jede Eigenschaft sind direkt bei jedem Beispiel angegeben oder zusammenfassend für jeden Unterabschnitt. Für größere Abschnitte oder Unterabschnitte sind ebenfalls Zusammenfassungen angegeben. Die Tests sind in zwei Teile aufgeteilt, zum einen die 'Animierbaren Attribute und Eigenschaften', zum anderen 'Animationsattribute und -elemente'. Natürlich sind dieses Ergebnisse nicht komplett unabhängig voneinander. Wenn ein Darstellungsprogramm ein Animationsattribut oder -element nicht interpretiert, wird die gesamte Animation der Attribute oder Eigenschaften scheitern, auf die sie angewendet wird. Wird andererseits ignoriert, daß ein Attribut oder eine Eigenschaft animierbar ist, wird die Animation ebenfalls scheitern. Daher sind diese beiden Komponenten zwei verschiedene Faktoren in der Fähigkeit eines Darstellungsprogramms, eine Animation mit SVG korrekt darzustellen.
Es ist wichtig, im Hinterkopf zu behalten, daß ein erfolgreiches Testergebnis nicht bedeutet, daß das Dokument komplett korrekt dargestellt wird. Zum Beispiel enthält jedes Beispiel die Elemente title und desc, aber diverse Programme sind nicht in der Lage, diese korrekt darzustellen, daher könnte ihr Gesamtergebnis auch null sein. Die Testergebnisse konzentrieren sich auf Animation und jene Elemente, die direkt mit dem Beispiel zu tun haben, daher sind im Allgemeinen alle Ergebnisse sehr gnädig.

Testergebnisse animierbare Attribute und Eigenschaften
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
ohne Filter
SVG 1.1
mit Filter
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
ohne Filter
SVG 1.1
mit Filter
Amaya9.51 14/258 (0.054) 16/562 (0.028) 16/673 (0.024)
Amaya11.3.1 15/258 (0.058) 19/562 (0.034) 19/673 (0.028)
KSVG1 32/258 (0.12) 49/562 (0.088) 49/673 (0.073)
WebKit 528.16ff (Safari 4) 152/258 (0.59) 262/562 (0.47) 262/673 (0.39)
Adobe 182/258 (0.71) 362/562 (0.64) 439/673 (0.65)
Squiggle 1.7 165/258 (0.64) 290/562 (0.52) 291/673 (0.43)
Opera8.02/50 76/258 (0.29) 101/562 (0.18) 101/673 (0.15)
Opera9tp1 118/258 (0.46) 182/562 (0.32) 235/673 (0.35)
Opera9tp2 176/258 (0.68) 288/562 (0.51) 361/673 (0.54)
Opera9 beta1 170/258 (0.66) 298/562 (0.53) 377/673 (0.56)
Opera9 beta2 182/258 (0.70) 321/562 (0.57) 399/673 (0.59)
Opera9.00/9.10 191/258 (0.74) 349/562 (0.62) 426/673 (0.63)
Opera9.50 alpha 196/258 (0.76) 400/562 (0.71) 496/673 (0.74)
Opera9.50 beta 198/258 (0.77) 404/562 (0.72) 498/673 (0.74)
Opera9.52 199/258 (0.77) 406/562 (0.72) 498/673 (0.74)
Opera10.0 alpha 207/258 (0.80) 414/562 (0.74) 508/673 (0.75)
Opera10.0 beta/ 10.0 207/258 (0.80) 411/562 (0.73) 505/673 (0.75)
Opera10.60 204/258 (0.79) 417/562 (0.74) 514/673 (0.76)
Opera11.00 198/258 (0.77) 408/562 (0.73) 506/673 (0.75)
Opera11.60 198/258 (0.77) 398/562 (0.71) 496/673 (0.74)
Opera12,00 198/258 (0.77) 399/562 (0.71) 497/673 (0.74)
Gecko 2.0 207/258 (0.80) 336/562 (0.60) 364/673 (0.54)
Gecko 8.0 216/258 (0.84) 344/562 (0.61) 381/673 (0.57)
Gecko 12.0 215/258 (0.83) 348/562 (0.62) 403/673 (0.60)
Gecko 24.0 216/258 (0.84) 349/562 (0.62) 402/673 (0.60)
Gecko 36.0 219/258 (0.85) 363/562 (0.65) 419/673 (0.62)
Gecko 48.0 223/258 (0.86) 378/562 (0.67) 456/673 (0.68)
Testergebnisse für Animationselemente und -attribute
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
Amaya9.51 7/366 (0.019) 8/402 (0.020)
Amaya11.3.1 8/366 (0.022) 9/402 (0.022)
KSVG1 11/366 (0.030) 11/402 (0.027)
WebKit 528.16ff (Safari 4) 149/366 (0.41) 156/402 (0.39)
Adobe 197/366 (0.54) 205/402 (0.51)
Squiggle 1.7 196/366 (0.54) 212/402 (0.53)
Opera8.02/50 117/366 (0.32) 120/402 (0.30)
Opera9tp1 139/366 (0.38) 144/402 (0.36)
Opera9tp2 194/366 (0.53) 208/402 (0.52)
Opera9 beta1 169/366 (0.46) 178/402 (0.44)
Opera9 beta2 177/366 (0.48) 188/402 (0.47)
Opera9.00/9.10 198/366 (0.54) 210/402 (0.52)
Opera9.50 alpha 254/366 (0.69) 266/402 (0.66)
Opera9.50 beta 256/366 (0.70) 268/402 (0.67)
Opera9.52 256/366 (0.70) 268/402 (0.67)
Opera10.0 alpha 256/366 (0.70) 270/402 (0.67)
Opera10.0 beta/ 10.0 258/366 (0.70) 270/402 (0.67)
Opera10.60 259/366 (0.71) 270/402 (0.67)
Opera11.00 260/366 (0.71) 272/402 (0.68)
Opera11.60 263/366 (0.72) 275/402 (0.68)
Opera12,00 255/366 (0.70) 266/402 (0.66)
Gecko 2.0 171/366 (0.47) 183/402 (0.46)
Gecko 8.0 187/366 (0.51) 199/402 (0.50)
Gecko 12.0 173/366 (0.47) 185/402 (0.46)
Gecko 24.0 177/366 (0.48) 189/402 (0.47)
Gecko 36.0 183/366 (0.50) 192/402 (0.48)
Gecko 48.0 183/366 (0.50) 191/402 (0.48)

Anzeigewahrscheinlichkeit

Anzeigewahrscheinlichkeit ist hier definiert als ein Ausdruck für die korrekte Anzeige einer einzelnen zufällig gewählten Animation.
Für eine zufällig gewählte Animation kann die Wahrscheinlichkeit einer korrekten Anzeige mit den beiden Testergebnissen abgeschätzt werden. Weil eine Animation von beiden abhängt, müssen die Wahrscheinlichkeiten multipliziert werden, um eine Abschätzung für eine einzelne einfache Animation zu erhalten. Falls es aber mehr als eine Animation pro Dokument gibt, hängt die Wahrscheinlichkeit von der Frage ab, ob dieselben animierbaren Attribute oder Eigenschaften und Animationselemente oder -Attribute verwendet werden. Die Anzeigewahrscheinlichkeit wird sich dann nicht vermindern. Aber falls die Animationen unabhängig voneinander sind, sind wiederum die einzelnen Anzeigewahrscheinlichkeiten miteinander zu multiplizieren, um das Ergebnis für das gesamte Dokument zu erhalten.

Anzeigewahrscheinlichkeit für eine einzelne zufällig gewählte Animation
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
ohne Filter
SVG 1.1
Darstellungsprogramm SVG tiny 1.1 SVG 1.1
ohne Filter
SVG 1.1
microsoft internet explorer < 9 *1* 0 ± 0 0 ± 0 0 ± 0
microsoft internet explorer 9 *2* 0 + 0.001 0 + 0.001 0 + 0.001
Renesis player 1.0 *2* 0 + 0.001 0 + 0.001 0 + 0.001
Amaya9.51 0.0011 ± 0.001 0.0006 ± 0.0006 0.0005 ± 0.0005
Amaya11.3.1 0.0013 ± 0.001 0.0008 ± 0.0008 0.0006 ± 0.0006
KSVG1 0.0038 ± 0.003 0.0024 ± 0.002 0.0020 ± 0.002
Safari4 (WebKit 528.16) 0.24 ± 0.012 0.18 ± 0.009 0.15 ± 0.008
Midori, Kazehakase, Epiphany (GTK libwebkit; WebKit 531.2) *3* 0 ± 0 0 ± 0 0 ± 0
rekonq, Konqueror4 (mit kpartwebkit), Arora (QT4 libqt4-webkit; WebKit 532.4) *4* 0 ± 0 0 ± 0 0 ± 0
Chromium 6 (WebKit 534.3) *5* 0 ± 0 0 ± 0 0 ± 0
Google Chrome (bis Version 19 getestet, WebKit 536.5) *6* 0 ± 0 0 ± 0 0 ± 0
Adobe 0.37 ± 0.019 0.32 ± 0.016 0.33 ± 0.017
Squiggle 1.7 0.34 ± 0.017 0.27 ± 0.014 0.23 ± 0.012
Opera8.x 0.091 ± 0.006 0.052 ± 0.004 0.044 ± 0.004
Opera9tp1 0.17 ± 0.009 0.12 ± 0.006 0.12 ± 0.006
Opera9tp2 0.36 ± 0.018 0.26 ± 0.013 0.27 ± 0.014
Opera9 beta1 0.30 ± 0.015 0.23 ± 0.012 0.24 ± 0.013
Opera9 beta2 0.34 ± 0.017 0.26 ± 0.013 0.27 ± 0.014
Opera9.0x/9.1x/9.2x 0.39 ± 0.020 0.32 ± 0.016 0.33 ± 0.017
Opera9.50 alpha 0.52 ± 0.026 0.46 ± 0.023 0.48 ± 0.024
Opera9.50 beta 0.53 ± 0.027 0.47 ± 0.024 0.49 ± 0.025
Opera9.5x/9.6x 0.53 ± 0.027 0.48 ± 0.024 0.49 ± 0.025
Opera10.0 alpha 0.55 ± 0.028 0.49 ± 0.025 0.50 ± 0.025
Opera10.0 beta/ 10.0 0.55 ± 0.028 0.49 ± 0.025 0.50 ± 0.025
Opera10.60 0.55 ± 0.028 0.49 ± 0.025 0.51 ± 0.026
Opera11.00 0.54 ± 0.027 0.49 ± 0.025 0.51 ± 0.026
Opera11.60 0.55 ± 0.028 0.48 ± 0.024 0.50 ± 0.025
Opera12,00 0.53 ± 0.027 0.47 ± 0.024 0.49 ± 0.025
Mozilla Gecko < 1.9.2 *7* 0 + 0.001 0 + 0.001 0 + 0.001
Mozilla Gecko 2.0 *8* 0.37 ± 0.019 0.27 ± 0.014 0.24 ± 0.012
Mozilla Gecko 8.0 *9* 0.43 ± 0.022 0.30 ± 0.015 0.28 ± 0.014
Mozilla Gecko 12.0 *10* 0.39 ± 0.020 0.28 ± 0.014 0.28 ± 0.014
Mozilla Gecko 24.0 *11* 0.40 ± 0.020 0.29 ± 0.015 0.28 ± 0.014
Mozilla Gecko 36.0 *12* 0.42 ± 0.021 0.31 ± 0.016 0.30 ± 0.015
Mozilla Gecko 48.0 *13* 0.43 ± 0.022 0.32 ± 0.016 0.32 ± 0.016

*1* Überhaupt keine Interpretation von SVG.
*2* Weil es für ein paar Tests keinen sichtbaren Effekt durch Animation gibt, sind diese Tests trotz allem in Ordnung.
*3* Zeigt Fehlermeldungen statt SVG, das mag mit Problemen der Dekodierung von iso-8859-1 zusammenhängen ;o)
*4* Stürzt auf einigen Rechnern ab, auf anderen mag es zu einer sinnvollen Anzeige kommen. Weil dies aber nicht vorhersagbar ist, wird keine verläßliche Anzeige angenommen.
*5* Scheint mit der Dekodierung von iso-8859-1 Probleme zu haben ;o)
*6* Gibt 'missing plug-in' auf einigen Rechnern an, auf einigen Rechnern mag es zu einer sinnvollen Anzeige kommen. Weil dies aber nicht vorhersagbar ist, wird keine verläßliche Anzeige angenommen. Lustige Entdeckung hier: Wenn 'plugins' deaktiviert werden, funktioniert die Anzeige von SVG. Spätestens ab Version 22 (WebKit 537.4) gibt es sinnvollere Warnungen und eine komfortable Deaktivierung einzelner plugins, die eine sinnvolle Nutzung ermöglichen.
*7* In 1.7.x teilweise Interpretation von SVG, aber keine Animation, ab 1.8.x wird SVG interpretiert, aber nicht animiert.
*8* Firefox 4 (rv:2.0, Gecko/20100101).
*9* Firefox 8 (rv:8.0, Gecko/20100101).
*10* Firefox 12 (rv:12.0, Gecko/20100101).
*11* Firefox 24 (rv:24.0 Gecko/20100101).
*12* Firefox 36 (rv:36.0 Gecko/20100101).
*13* Firefox 48 (rv:48.0 Gecko/20100101).

Genauigkeit der Abschätzung: Frühere Fluktuationen in diesen Ergebnissen ermöglichen eine Abschätzung des relativen Fehlers für die Anzeigewahrscheinlichkeit auf etwa fünf Prozent des Wertes, was bislang unentdeckte Fehler in den Tests selbst einschließt. Natürlich sind die relativen Fluktuationen größer, wenn nur wenige Testergebnisse in Ordnung sind.

Für SVG ist ein Ergebnis mit und eines ohne das Kapitel 'Filter' angegeben. Anzumerken ist dazu, daß KSVG 1, Opera 8 und Safari4 Filter vollständig und auch ohne Animation ignorieren, für sie ist die Anzeigewahrscheinlichkeit für Filter und Animation daher 0.

Natürlich haben Autoren von SVG-Dokumenten Einfluß auf das Ergebnis für ihre Dokumente, wenn sie keine zufällige Auswahl treffen. Einige Attribute, Eigenschaften und Elemente werden öfter genutzt als andere - Entwickler von Darstellungsprogrammen wissen das und kümmern sich besonders um diese Teile von SVG. Wenn Autoren dieses berücksichtigen, etwa indem sie in dieser Veröffentlichung durchgefallene Beispiele vermeiden, kann die Wahrscheinlichkeit einer korrekten Anzeige eines Dokumentes erhöht werden.

Der Nachteil dieses Ansatzes ist, daß das Dokument nicht wirklich den beabsichtigten Inhalt zeigt, nur einen ähnlichen sichtbaren Effekt. Das ist nicht das gleiche und Autoren müssen diese Einschränkungen und Fehler verfügbarer Darstellungsprogramme im Kopf behalten, also lediglich Dokumente vorläufig umsetzen, um sie in Zukunft mit besseren Darstellungsprogrammen zu korrigieren.

Das Werk eines Autors sollte durch seine Vorstellungskraft, Phantasie und seine Fähigkeiten gestaltet werden, nicht durch die Fehler und Lücken verfügbarer Hilfsmittel wie Darstellungsprogramme. Daher ist es wichtig, bessere Darstellungsprogramme zu fordern, mit einer kompletten SVG-Unterstützung, um in die Lage versetzt zu werden, sich auf den Inhalt zu konzentrieren und nicht auf die Fehler von Darstellungsprogrammen.

Die Ergebnisse für die Darstellungsprogramme zeigen, daß KSVG 1 nur ein erster Versuch ist, was Animationen anbelangt. Bislang ist KSVG hauptsächlich ohne Animation brauchbar. Vielleicht für sehr spezielle und einfache Animationen können Autoren Dokumente realisieren, vornehmlich für dieses Darstellungsprogramm.

Die Fähigkeiten von Amaya (bis Version 11.3.1 getestet) sind nicht wirklich für Animation sinnvoll und es hat viele Lücken und Probleme mit der Anzeige, ich glaube aber, dieses Projekt ist für jedermann offen, um zu helfen.

Werden die Fähigkeiten von Opera 8 in Betracht gezogen, so können Autoren damit bereits sehr interessante Animationen erschaffen. Meist wird es nicht sehr schwierig sein, die Fehler dieses Darstellungsprogrammes zu umgehen. Natürlich hat Opera Version 8 als Darstellungsprogramm für SVG tiny veröffentlicht und daher ist es ein bißchen enttäuschend. Fehler und Lücken sollten zügig korrigiert werden, um dieses Versprechen wahr werden zu lassen, was sich durch eine Anzeigewahrscheinlichkeit von mehr als 0.9 für SVG tiny 1.1 ausdrückt.
Opera10.x sind bereits jetzt das besten Darstellungsprogramme für deklarative Animation, einmal abgesehen von einigen Genauigkeitsproblemen.
Leider stagniert die Entwicklung in späteren Versionen oder ist sogar leicht rückläufig.
Es ist zu beachten, daß Opera die Entwicklung am für das Programm relevanten Teil Presto mit der Version Opera12.16 eingestellt hat. Versionen jenseits davon beziehen sich auf WebKit oder Blink und die Fähigkeiten von Presto wurden nicht in diese Versionen gerettet, sie haben einfach nichts miteinander zu tun.

Das Adobe-plugin hat eine ähnliche Anzeigewahrscheinlichkeit wie Opera 9 beta 1/2, beide haben aber oft unterschiedlichen Schwächen, daher sind die Autoren gezwungen, nur eine gewisse Teilmenge von SVG zu verwenden, um es in beiden korrekt angezeigt zu bekommen. Und Adobe hat sich SVG full zum Ziel gesetzt, nicht nur SVG tiny, Opera 9 nur basic. Das Adobe-plugin hat ein anderes großes Problem: Falls es glaubt (Informationen vom browser oder vom Betriebssystem nutzend), die deutsche Notation für Fließkommazahlen sollte benutzt werden: 0,1 statt 0.1, dieses verursacht viel mehr Fehler und die Anzeigewahrscheinlichkeit wird viel kleiner und Adobe scheint kein Interesse zu haben, diesen bekannten Fehler zu beheben.

Squiggle 1.7 hat ein spezielles Problem mit Dokumenten des Profils SVG tiny, diese können nur mit einer internet-Verbindung betrachtet werden, weil bei Dokumenten mit doctype Squiggle 1.7 versucht, eine Verbindung zu www.w3.org aufzubauen, was nicht für Dokumentes des Profiles full der Fall ist. Falls die Verbindung möglich ist, ist die Anzeigewahrscheinlichkeit für tiny etwas besser als für das adobe plugin, für die Beispiele zum Profil full deutlich darunter. Für Dokumente mit Fehlern sind die Fehlermeldungen von Squiggle 1.7 sehr hilfreich, leider sind in verschiedenen Fällen die Fehlermeldungen Fehler des Darstellungsprogrammes, nicht des Dokumentes, daher sollten Autoren den Meldungen nicht ohne Nachprüfung trauen.

WebKit 528.16 ist ein weiterer erster Versuch, Animation betreffend, hier mit Apples Safari 4 getestet. Es ist nicht wirklich schlecht, aber es gibt noch viel zu tun. Andere Varianten wie Google Chrome oder Chromium scheinen zu viele fundamentale Probleme zu habe, um überhaupt nützlich zu sein.

Von einigen anderen Produkten her ist bereits bekannt, daß microsoft generelle Probleme hat, Standards zu folgen. Leider trifft dies auch für die Interpretation von SVG im microsoft internet explorer (MSIE) zu - es ignoriert absichtlich Animationen. Solch Produkte sind für den Nutzer generell unbrauchbar.

Mozilla Gecko 2.0 ist ein hoffnungsvoller Versuch für eine gute Interpretation von SVG tiny - leider verhindert die fehlende Interpretation von animateColor, daß dieses Darstellungsprogramm wirklich nützlich ist, um wirklich existierende SVG-Dokumente anzeigen zu lassen. Andere Fehler wie das lustige interne Ausschnittsproblem, oft sichtbar, falls Filter verwendet werden, verhindert die Verwendung für SVG full noch mehr. Ein teilweise bereits implementiertes Merkmal wie Interaktivität wurde in Version 9 wieder entfernt.
Leider sind die meisten dieser Probleme bis Version Mozilla Gecko 8.0 immer noch ungelöst. Bei Diskussionen mit Entwicklern stellt sich heraus, daß es keine große Motivation gibt, Standards zu folgen und alle Merkmale von SVG zu implementieren. Daher ist die Chance gering, daß dieses Darstellungsprogramm jemals eine zuverlässige Implementierung aufweisen wird. Jenseits von Mozilla Gecko 8.0 stellen sich leider wieder Rückschritte ein, die deutlich größer als die gleichzeitig vorgenommenen Verbesserungen sind. Das Programm stagniert im Wesentlichen auf diesem niedrigen Niveau.

Schlußfolgerung

Verfügbare Darstellungsprogramme für Animationen mit SVG haben viele Fehler bei der Anzeige animierbarer SVG. Gegenwärtig (2016) ist es unmöglich, eine SVG-Animation zu erstellen, ohne die Fähigkeiten von Darstellungsprogrammen zu kennen, sich nur auf Spezifikationen verlassend. Diverse Inkonsistenzen in der Darstellung in den Programmen liegen an Unklarheiten, Lücken und Fehlern in der SMIL-Empfehlung und der SVG-Spezifikation.
Die beste Wahl für Autoren ist derzeit SVG tiny 1.1 und für Nutzer die letzte Version von Opera 10.x.

Einige der Fehler können vom Autor umgangen werden, vorläufige Problemumgehungen verwendend und nur einen Teilbereich von SVG oder SVG tiny nutzend.
Trotzdem ist es mit diesem kleinen Teilbereich bereits möglich, sehr nützliche Projekte umzusetzen, wobei aber eine detaillierte Kenntnis der Fehler von Darstellungsprogrammen notwendig ist. Die vorläufigen Problemumgehungen müssen ausgetauscht werden, sobald bessere Darstellungsprogramme für jedermann verfügbar sind.

In 2005 waren wir erst am Anfang mit animierbaren SVGs, aber es ist bereits klar zu sehen, was wir in Zukunft mit besseren Darstellungsprogrammen bekommen könnten: SVG tiny als phantastisches und mächtiges Werkzeug zur Erzeugung ausgeklügelter Animationen. Es wäre wirklich sehr nützlich und nett, über ein Darstellungsprogramm zu verfügen, welches eine Anzeigewahrscheinlichkeit von mehr als 0.9 für SVG tiny1.1 hat. Dies mag allerdings einige Arbeit zur Fehlerbeseitigung auch in den Spezifikationen erfordern. Derzeit (2015) sieht es allerdings nach wenig Motivation aus, dieses phantastische und mächtige Werkzeug mit ausreichender Qualität zu implementieren. Die Arbeit an Spezifikationen konzentriert sich derzeit eher darauf, mehr Inkompatibilitäten zu erzeugen, als verbleibende Inkonsistenzen zu beseitigen. Daher können Autoren nicht erwarten, in den nächsten zehn oder mehr Jahren zuverlässige Implementierungen zu bekommen.

Literaturangaben

W3C: Mobile SVG Profiles: SVG Tiny and SVG Basic
Schumacher: SVG Mobile - Empfehlung vom 14. Januar 2003
W3C: Scalable Vector Graphics (SVG) 1.1 Specification
W3C: Scalable Vector Graphics (SVG) Tiny 1.2 Specification
W3C: SVG public mail archives
W3C: SMIL Animation 2001-09-04
W3C: SMIL 2.0
W3C: SMIL 2.1
W3C: SMIL public mail archives
W3C: SVG 1.1 Test Suites
Hoffmann: Opera Bugs or Problems with SVG and (X)HTML
Hoffmann: SVG und PHP (Anleitung)