SVG Tiny 1.2 complements and changes compared to SVG Tiny 1.1
335 examples, 2012-08-17
Index
Introduction
Since 2008-12-22 SVG Tiny 1.2 is a recommendation.
The W3C validator does not support
such files without a doctype as recommended by SVG Tiny 1.2,
therefore the examples are not tested.
Just to get an impression, what happens with current viewers,
tests with the adobe plugin (published before SVG Tiny 1.2 was planned),
with Opera9.01 (published 2006-07-28, a few days before the candidate recommendation),
with Opera 9.10 (2006-12-14), 9.50 alpha (2007-09-03), 9.50 beta (2007-10-24), 9.52 (2008-08-14),
10.0 alpha (2008-12-03), 10 beta (3, 2009-08-11), 10.0 (2009-08-30), 10.60 (2010-06-30), 11.00 (2010-12-15), 11.60 (2011-12-05), 12.00 (2012-06-16).
Squiggle (from apache/batik 1.7, 2008-01-09; running on sun-java 1.6) and
WebKit 528.16 (Safari 4 Beta, 2009-02-24) are offered.
For Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/ 11.60/ 12.00 it is noted, that it supports parts of SVG Tiny 1.2.
The biggest change for older viewers is maybe, that it is possible to use
xml:id
instead of id
as a fragment identifier attribute. In previous drafts it was recommended to use the
xml:id
, but it was possible simple to use the
id
with the same value to ensure forwards and backwards
compatibility. Now in the proposed recommendation it is excluded to use both attributes on
the same element.
This may cause older viewers to fail completely with animations of SVG Tiny 1.2
documents, even if they are able to display the same animation completely correct in
SVG 1.0 or 1.1. If this is a reason for an error, this is marked as
xml:id
in the comments. Even a newer viewer like WebKit 528.16 has
problems with this features resulting in a similar behaviour as for an old viewer like the adobe plugin.
Basic Shapes
There are no big changes compared to SVG Tiny 1.1 related to animation.
Most examples from SVG Tiny 1.1 can be used for testing.
rect
z2008-01-15-01: §M(1)P
animation of a rect:
The width and height of a rect is animated from 0 to 100.
The attributes are not explicitely given.
In SVG 1.1 these attributes were required, but are not required in SVG 1.2 tiny
anymore, if not given they are assumed to be 0. 0 disables the rendering of the
element.
The blue test case is compared with a red comparsion behind it with
explicitely given attributes. If the red comparison gets visible, an error is
occurred.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-30-11: §M(1)P
rect and stroke-dasharray:
stroke-dasharray for a rectangle with rounded corner is set after 2s.
Because the beginning of the drawing of the rectangle was changed
in some early drafts of SVG Tiny 1.2 compared to SVG Tiny 1.1,
the starting point of stroke-dasharray was changed. This was adjusted
again to the behaviour of SVG Tiny 1.1 in the proposed recommendation.
The visible effect is that only the straight part and not the
rounded corners are painted blue. Thin gray lines indicate the
dashing from the early drafts - this is the painting of
the rounded corners of the rectangle.
If something red gets visible, the dashing is not
correct.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , stroke-dasharray not animated |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-11-09-01: §M(1)P
rect and stroke-dasharray:
stroke-dasharray animation for a blue rectangle with
rounded corners and a red circle is compared.
Because the beginning of the drawing of the rectangle was changed
in some early drafts of SVG Tiny 1.2 compared to SVG Tiny 1.1,
the starting point of stroke-dasharray was changed. This was adjusted
again to the behaviour of SVG Tiny 1.1 in the proposed recommendation.
If both animations fit to SVG Tiny 1.2, no red
circle is visible, because it is always covered by the
painted blue rectangle with the shape of a circle.
Additionally the start point of the animation is
indicated by a thick black arrow.
A thin gray arrow indicates the wrong start point from
previous drafts.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , stroke-dasharray not animated |
Squiggle 1.7 | fail | discrete animation, wrong initial display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | ok | - |
Opera10.60/ 11.00/11.60/ 12.00 | fail | accuracy problems with length of path |
circle
z2008-01-14-01: §M(1)P
animation of a circle:
The radius of a circle is animated from 0 to 100.
The r attribute is not explicitely given.
In SVG 1.1 this attribute was required, but is not required in SVG 1.2 tiny
anymore, if not given it is assumed to be 0. 0 disables the rendering of the
element.
The blue test case is compared with a red comparsion behind it with
explicitely given r attribute. If the red comparison gets visible, an error is
occurred.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
ellipse
z2008-01-15-11: §M(1)P
animation of an ellipse:
The rx and ry of an ellipse are animated from 0 to 100.
The attributes are not explicitely given.
In SVG 1.1 these attributes were required, but are not required in SVG 1.2 tiny
anymore, if not given they are assumed to be 0. 0 disables the rendering of the
element.
The blue test case is compared with a red comparsion behind it with
explicitely given attributes. If the red comparison gets visible, an error is
occurred.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
polyline
z2008-01-16-01: §M(1)P
animation of a polyline:
The points attribute of a polyline is animated discrete.
The attribute is not explicitely given at the element.
In SVG 1.1 this attribute is required, but are not required in SVG 1.2 tiny
anymore, if not given this disables the rendering of the
element.
The blue test case is compared with a red comparsion behind it with
explicitely given attributes. If the red comparison gets visible, an error is
occurred.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-04-08-02: §M(2)P
animation of a polyline:
The points attribute of polyline is animated showing a painting of the house of Nikolaus.
The polylines are given in gray in the background for comparison.
The dark blue stroked polyline is animated discrete with animate,
the light blue stroked polyline is animated with set animations.
Because SVGT1.2 specifies, that a polyline must be rendered in a way that produces the same result as the related path,
discrete animation is possible, even if the values have different numbers of points.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | confused animation |
Adobe | ok | - |
Squiggle 1.7 | fail | paints the first value, corresponding only to a M command |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-04-09-02: §SM(1)P
unsupported animation of a polyline:
It is tried to animate the points attribute of a polyline showing the house of Nikolaus.
The initial polyline is given in red in the background for comparison, always covered
by the blue polyline.
The polyline is animated without explicitly setting calcMode to discrete,
Because for SVGT1.2 it is noted
"A 'polyline' element must be rendered in a way that produces the same result
as if the following path were specified instead"
the same rules as for a path has to be applied, the animation specification
must be ignored as unsupported.
In SVG 1.1 correct behaviour would be a discrete animation due to the general rules
to determine the calcMode.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animates discrete |
Adobe | fail | animates discrete |
Squiggle 1.7 | fail | animates discrete |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animates discrete |
polygon
z2008-01-16-11: §M(1)P
animation of a polygon:
The points attribute of a polygon is animated discrete.
The attribute is not explicitely given at the element.
In SVG 1.1 this attribute is required, but are not required in SVG 1.2 tiny
anymore, if not given this disables the rendering of the
element.
The blue test case is compared with a red comparsion behind it with
explicitely given attributes. If the red comparison gets visible, an error is
occurred.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-04-08-01: §M(2)P
animation of a polygon:
The points attribute of polygon is animated showing regular polygons.
The polygons are given in gray in the background for comparison.
The dark blue stroked polygon is animated discrete with animate,
the light blue stroked polygon is animated with set animations.
Because SVGT1.2 specifies, that a polygon must be rendered in a way that produces the same result as the related path,
discrete animation is possible, even if the values have different numbers of points.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-04-09-01: §SM(1)P
unsupported animation of a polygon:
It is tried to animate the points attribute of a polygon showing regular polygons.
The initial polygon is given in red in the background for comparison, always covered
by the blue polygon.
The polygon is animated without explicitly setting calcMode to discrete,
Because for SVGT1.2 it is noted
"A 'polygon' element must be rendered in a way that produces the same result
as if the following path were specified instead"
the same rules as for a path has to be applied, the animation specification
must be ignored as unsupported.
In SVG 1.1 correct behaviour would be a discrete animation due to the general rules
to determine the calcMode.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animates discrete |
Adobe | fail | animates discrete |
Squiggle 1.7 | fail | animates discrete |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animates discrete |
Test results for Basic Shapes
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 1/11 |
Adobe | 2/11 |
Squiggle 1.7 | 4/11 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 9/11 |
Opera 10.60/ 11.00/11.60/ 12.00 | 8/11 |
Paths
There are some important changes related to animation compared to version 1.1.
Now discrete or set animations are always possible, even if the commands are different.
The other important change is, that a normalisation is defined and the structure of
commands has only to be the same for different values of continous animations after
normalisation. This means, a change of small and large letters is possible. In the first
drafts it was possible to switch betweem quadratic and cubic Bézier s. This is excluded again
in the proposed recommendation.
Shorthand Bézier s have to be expanded to cubic Bézier s from the
viewer before testing the command structure. Only the number of commands has to be the same.
Examples for path animation already allowed in SVG tiny 1.1 can be taken for
testing not related to these new possibilities.
z2006-08-15-11: §M(1)P
path animation
with different paths:
Path animation with different commands for lines with
a dur of 10s. If something red gets visible an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong animation, stops with wrong mysterious error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-15-12: §M(1)P
path animation
with different paths:
Path animation with different commands for Bézier curves with
a dur of 10s. If something red gets visible an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong discrete animation |
Opera 9.01/9.10 | ok | - |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong paths within animation |
z2007-10-30-01: §M(1)P
path animation
with different paths:
Discrete path animation with different commands for quadratic and cubic
curves with commands for lines resulting in the same shape with
a dur of 10s with no visible animation effect.
If something red gets visible an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong mysterious error messages |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-15-13: §M(1)P
path animation
with different paths:
Path animation with different commands for Bézier curves and lines
or with a different number of commands with a dur of 10s.
Because line commands and Bézier curve commands
are alternated in the animation values the viewer has not to support
animation. Or if the number of commands differs in the values,
as in the second animation the viewer has not to support animation, too.
If something red gets visible an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong mysterious error messages |
Opera 9.01/9.10 | fail | discrete animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong paths within animation |
z2006-08-15-14: §Q
discrete path animation
with different paths:
Discrete path animation with different commands for Bézier curves and lines with
a dur of 10s. Because line commands and Bézier curve commands
are alternated in the animation values, only discrete animation is
possible.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong mysterious error messages |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-02-06-01: §Q
set path animation
with different paths:
set path animations with different commands for Bézier curves and lines
all 2s. Line commands and Bézier curve commands
are alternated in the different set elements.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-04-07-01: §M(1)P
unsupported path animation
with different paths:
The d attribute of path is animated with four values
with three points and one with four points.
For the blue figure no calcMode is given.
For SVGT1.2 discrete animation is possible as well as set animations, but
for the blue case the animation specification must be ignored as unsupported.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animates something |
Adobe | fail | uses a mixture of continuous and discrete animation |
Squiggle 1.7 | fail | shows a behaviour as recommended for SVG1.1:
stops animation and provides error messages |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | uses a mixture of continuous and discrete animation, other timing than Adobe |
SVG Tiny 1.2 defines a paced animation for path animation too, but the formula in
the working drafts and the candidate recommendation is wrong. This may cause
a problem for implementors, because the realisation of the correct behaviour is very
complex. On the other hand the paced animation is defined now therefore it is necessary
to ignore the wrong formula and to implement the correct behaviour, if the candidate
recommendation is not changed in this point.
As already explained for polyline and polygon there is no (known) way to interpolate
paced between simple lines, therefore there is the same contradiction in the specification
already for L-commands as for polylines and polygons. It is possible to specify an interpolation
like calcMode linear or spline, but no paced behaviour at the same time. To get a useful
paced behaviour, we get with similar considerations as for the point attribute the result
with a separately calculated distance for any given point or control point in the d attribute.
But this does not interpolate.
To avoid inconsistencies, either the specification has to dispence paced animation for the d attribute
or it has to specify an exception using a list of distances as described to
get some useful behaviour. The described behaviour in SVG Tiny 1.2 is not useful or correct
and has to be skipped.
Test results for Paths
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/7 |
Adobe | 0/7 |
Squiggle 1.7 | 0/7 |
Opera 9.01/9.10 | 5/7 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 4/7 |
Document Structure
discard
Tests of the
discard
element are moved.
svg
z2006-08-16-11: §Q
snapshotTime:
snapshotTime can be used to indicate a time for animated
SVGs for the presentation of a snapshot as thumbnail image
or as a preview.
Here the radius of a blue circle is animated after 2s from zero
to large and back to zero in 10s with repetition.
The snapshotTime is 7s, this means the diameter of the
circle in the snapshot is the same as width or height of the
SVG.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no preview, xml:id |
Adobe | fail | no preview, xml:id |
Squiggle 1.7 | fail | no preview or the 'thumbnail' displays something different |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | Opera has a preview up to version 10.0, but does not use the snapshotTime to display it |
z2006-08-16-12: §IM(1)Q
playbackOrder:
For two circles the radius is animated from
zero to large to zero in 10s. The blue
circle covers always the red circle.
The red circle is discarded at 7s using the
discard element, the display of the blue
circle is set to none at 7s.
The animation of the radius of the blue circle can be
restarted clicking the small blue stroke circle bottom right.
The restart is realised with a back seeking hyperlink to
a fragment identifier. Because playbackOrder is set to
forwardOnly the red circle keeps discarded.
If the red circle gets visible at any time, an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no discard or playbackOrder, xml:id |
Adobe | fail | no discard or playbackOrder, xml:id |
Squiggle 1.7 | fail | attribute ignored |
Opera 9.01/9.10 | fail | attribute ignored |
Opera 9.50 alpha/beta | (ok) | low timing accuracy, but attribute supported |
Opera 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | crashes |
z2006-08-16-13: §Q
timelineBegin:
For a blue circle the radius is animated from
zero to large to zero in 10s.
The document references an additional
random image 'punkt.php' created by
PHP with an output retarded about 5s.
Because the timelineBegin is onStart
the animation begins with the display
of the image approximately 5s after
the request of the document.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | attribute ignored, xml:id |
Adobe | fail | attribute ignored, xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | attribute ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60 | ok | - |
Opera 11.00/11.60/ 12.00 | fail | starts immediately |
z2007-11-11-01: §Q
timelineBegin:
For a blue circle the radius is animated from
zero to large to zero in 10s.
The document references an additional
random image 'punkt.php' created by
PHP with an output retarded about 5s.
Because the timelineBegin is onLoad
the animation begins immediately before
the image is available, this means, that either
the circle is visible without the image or the
initial part of the animation starting with
a radius of 0 is not visble, the animation will
then get visible approximately at 5s with the
maximum size radius.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | attribute ignored, xml:id |
Adobe | fail | attribute ignored, xml:id |
Squiggle 1.7 | fail | attribute ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60 | fail | attribute ignored |
Opera 11.00/11.60/ 12.00 | fail | starts after the image appears |
title and desc
z2006-08-17-01: §Q
title, desc and animation:
Are title and desc of the elements svg, rect and ellipse accessible somehow?
For accessibility reasons all title and desc elements should be available somehow for users.
The desc element can contain alternative descriptive content, replacing graphics
for example, if the rendering of the graphics is not possible or if this is switched
off for accessibility reasons.
From a theoretical point of view it was already possible to use markup from
other namespaces too in SVG 1.1
but the W3C validator did not like it. In
SVG tiny 1.2 the doctype is gone, the validators do not test it anymore, but
markup from other languages is not allowed anymore within title and desc, therefore
this has to be moved into the metadata element and therefore it is no problem to add for
example some XHTML.
Note, that according to the proposed recommendation, it is not correct to display title and desc
as tooltips, if there is no role="tooltip" on the element.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | desc ignored, xml:id |
Adobe | fail | title and desc ignored, xml:id |
Squiggle 1.7 | fail | title and desc ignored; title without role="tooltip" displayed as tooltip |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | document title, group title and desc ignored in 9.01/9.10, incomplete in 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00; title without role="tooltip" displayed as tooltip |
z2008-12-14-01: §Q
title, desc and animation:
Are title and desc of the elements svg, rect and ellipse accessible somehow?
For accessibility reasons all title and desc elements should be available somehow for users.
The desc element can contain alternative descriptive content, replacing graphics
for example, if the rendering of the graphics is not possible or if this is switched
off for accessibility reasons.
From a theoretical point of view it was already possible to use markup from
other namespaces too in SVG 1.1
but the W3C validator did not like it. In
SVG tiny 1.2 the doctype is gone, the validators do not test it anymore, but
markup from other languages is not allowed anymore within title and desc, therefore
this has to be moved into the metadata element and therefore it is no problem to add for
example some XHTML.
Note, that according to the proposed recommendation, it is not correct to display title and desc
as tooltips, if there is no role="tooltip" on the element. This sample has only this attribute and attribute
value for the title, desc and metadata of the svg element. Therefore only these may be displayed as a tooltip,
however it is possible to display them in a different way too as the others.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | desc ignored, xml:id |
Adobe | fail | title and desc ignored, xml:id |
Squiggle 1.7 | fail | title and desc ignored; title without role="tooltip" displayed as tooltip |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | document title, group title and desc ignored in 9.01/9.10, incomplete in 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00; title without role="tooltip" displayed as tooltip |
use
z2006-08-17-11: §Q
use of
external document fragments:
The use element references an external document fragment,
this has the same visible effect as z2006-08-17-01 (t12titledesc01.svg)
except the title and desc of this document.
Note that there are some restrictions on the fragments, that
can be referenced: no svg elements, no scripting, no hyperlinking
to animations, no further use elements referencing external
content or an animation element.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no display |
Adobe | fail | no display |
Squiggle 1.7 | fail | referenced fragment not animated |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
image
The image element can have now a type attribute to give a hint for the content/MIME/MEDIA type of
the referenced image. Since the proposed recommendation the type attribute is animatable.
This is useful, if the xlink:href attribute is animated and the content type changes within the
animation.
z2006-08-17-21: §Q
image with
opacity and type:
The xlink:href of an image element is animated.
The random generated images cover a blue circle.
The image element has an opacity of 0.6 and
a type of image/png is given. This is correct for the
case the server serves an empty MIME type.
For other cases the information of the server
is authoritative over the type attribute.
The visible effect is a blue circle covered with
the image with an opacity of 0.6. Because the
image is never empty, there will be always the
blue circle and the image be visible.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | opacity ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-15-01: §Q
image with
opacity and type:
The xlink:href of an image element is animated.
The random generated images cover a blue circle.
The image element has an opacity of 0.6 and
a type of image/gif is given. The server
serves an empty Content/Media/MIME type.
Therefore the type given by the animation of
the type attribute is relevant.
The visible effect is a blue circle covered with
the image with an opacity of 0.6. Because the
image is never empty, there will be always the
blue circle and the image visible.
To check, whether the hint is interpreted at
all, the small image top left has an animation
with the wrong types. If the hints are followed
this cannot result in a useful display of the small
image. Bottom right the type authoritatively given
by the server is wrong, that of the type attribute is
right. The server information should not result in
a useful display, because this should not be ignored.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | claims, that type is not animatable |
Opera 9.01/9.10 | fail | opacity and server information ignored (type ignored) |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | server information ignored (and type ignored) |
z2007-11-11-11: §Q
GIF or not?:
Support for image/gif is tested. The support is optional, therefore a
switch is used. On top a blue and a yellow GIF is provided, on bottom
left an animated GIF is provided. In the middle related PNGs are
used as comparison. The animation is realised for the PNG
with an animation of the xlink:href. There is no visible difference
between the small centered PNGs and the GIFs, if the GIFs are
shown.
On bottom right the switch with
requiredFormats is used with text content only.
The results have to be consistent - the PNGs have always to be shown.
If the GIFs are not shown, the text switch has to note 'switch: no gif',
else 'switch: gif ok'. A red background indicates an error.
This test does not query, whether image/gif is an image format or not,
maybe it would have be better to call animated GIFs as video/gif, but this
content type is not registered.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | fail | animated GIF not animated |
Squiggle 1.7 | fail | endless loading, needs to be restarted to proceed |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60 | fail | no animated GIF displayed |
Opera11.00/11.60/ 12.00 | (ok) | minor timing problems |
z2008-05-28-01: §Q
xlink:href of image:
The xlink:href of an image element is set with a
set element with multiple begins and a duration of 2s.
xlink:href is not explicitely set or empty on an image elements.
In SVGT1.2 not explicitely set is the same as an empty xlink:href and
this means for an image element, that the rendering is disabled.
The set enables the rendering of the image.
The random generated images cover a blue circle, the
fill of the circle is switched with the same timing as the
images change.
The image elements have an opacity of 0.6.
The visible effect is a blue circle covered with
the image with an opacity of 0.6. Either the image
is displayed or not, there will be always the
blue circle visible having the same
timing for animation, dark blue corresponding to no
image, light blue for a displayed image.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | displays question mark |
Adobe | ok | - |
Squiggle 1.7 | fail | shows error message incorrect for SVGT1.2 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-05-28-02: §Q
xlink:href of image:
The xlink:href of an image element is animated including
two empty values. In SVGT1.2 an empty xlink:href for an
image element means, that the rendering is disabled.
The random generated images cover a blue circle, the
fill of the circle is switched with the same timing as the
images change.
The image element has an opacity of 0.6.
The visible effect is a blue circle covered with
the image with an opacity of 0.6. Either the image
is displayed or not, there will be always the
blue circle visible having the same
timing for animation, dark blue corresponding to no
image, light blue for a displayed image.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong display for empty images |
Adobe | ok | - |
Squiggle 1.7 | fail | shows error message incorrect for SVGT1.2 |
Opera 9.01/9.10 | fail | wrong timing |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | no animation |
Test results for image
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 1/5 |
Adobe | 2/5 |
Squiggle 1.7 | 1/5 |
Opera 9.01/9.10 | 1/5 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 2/5 |
switch and conditional processing
Feature strings and similar things for the switch element are different form SVG tiny 1.1,
even if there are no changes. This may cause problems with older viewer.
Of course they do not know the new feature strings and will display the
alternate content. This is maybe not very useful for the idea of backwards
compatibility and accessibility ;o)
z2006-08-17-31: §Q
switch and alternate content:
Even if a user-agent is not able to present animation,
it should be able to present some alternate content.
Therefore an author should use the switch element to
offer the main information in an alternative way.
As can be seen in this example, even a
simple animation can be the source of deep
metaphysical wisdom ;o)
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | displays alternate content |
Adobe | ok | displays alternate content |
Squiggle 1.7 | ok | displays alternate content |
Opera 9.01/9.10 | ok | displays alternate content |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | displays animation |
z2007-10-30-10: §Q
switch and requiredFeatures:
Testing requiredFeatures from SVG tiny 1.2 using switch.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no features supported yet |
Adobe | fail | no features supported yet |
Squiggle 1.7 | fail | no features supported yet |
Opera 9.01/9.10 | fail | no features supported yet |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | not all features supported yet |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-30-01: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/png
on a set element.
The set switches the color of a gray square to blue at 2s,
not to red as the alternative set would do, if image/png
is not supported. But this format has to be supported.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-02: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/x-dsp+xml
on a set element.
The set enlarges the width of a red square.
The following alternative set element enlarges the height
of the same rectangle.
It is assumed, that a viewer does not support the required
format, therefore the alternative set has to be used.
A blue comparison is provided on top of the red one,
if the red test rectangle gets visible, this indicates
an error.
To test, whether the required format is supported or not,
this is a test file: sls.idsp.
If the format is supported, a simulation of a collisions
of two black holes in the four-dimensional space time
with a duration of 120s will get visible. Note that this
requires a specific display device for realistic presentations
of simulations in the four dimensional space time including
general relativistics.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | switch ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-30-03: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/jpeg
on a g element containing a circle and a set element.
The set switches the color of a gray square to blue at 2s,
not to red as the alternative set would do, if image/jpeg
is not supported. But this format has to be supported.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-04: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/x-dsp+xml
on a g element containing a circle and a set element.
The set enlarges the width of a red square.
The following alternative set element enlarges the height
of the same rectangle.
It is assumed, that a viewer does not support the required
format, therefore the alternative set has to be used.
A blue comparison is provided on top of the red one,
if the red test rectangle gets visible, this indicates
an error.
To test, whether the required format is supported or not,
this is a test file: sls.idsp.
If the format is supported, a simulation of a collisions
of two black holes in the four-dimensional space time
with a duration of 120s will get visible. Note that this
requires a specific display device for realistic presentations
of simulations in the four dimensional space time including
general relativistics.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-05: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/svg+xml
on a g element containing a circle with a set element inside.
The set switches the color of a gray square to blue at 2s,
not to red as the alternative set would do, if image/svg+xml
is not supported. But obviously this format has to be supported.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-06: §M(1)P
switch and requiredFormats:
A switch is used with requiredFormats for image/x-dsp+xml
on a g element containing a circle with a set element inside.
The set enlarges the width of a red square.
The following alternative set element enlarges the height
of the same rectangle.
It is assumed, that a viewer does not support the required
format, therefore the alternative set has to be used.
A blue comparison is provided on top of the red one,
if the red test rectangle gets visible, this indicates
an error.
To test, whether the required format is supported or not,
this is a test file: sls.idsp.
If the format is supported, a simulation of a collisions
of two black holes in the four-dimensional space time
with a duration of 120s will get visible. Note that this
requires a specific display device for realistic presentations
of simulations in the four dimensional space time including
general relativistics.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-07: §M(1)P
switch and requiredFormats:
A switch inside a rect is used with requiredFormats for image/svg+xml
on a set element.
The set switches the color of a gray square to blue at 2s,
not to red as the alternative set would do, if image/svg+xml
is not supported. But this format has to be supported.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-11-30-08: §M(1)P
switch and requiredFormats:
A switch inside a rect is used with requiredFormats for image/x-dsp+xml
on a set element.
The set enlarges the width of a red square.
The following alternative set element enlarges the height
of the same rectangle.
It is assumed, that a viewer does not support the required
format, therefore the alternative set has to be used.
A blue comparison is provided on top of the red one,
if the red test rectangle gets visible, this indicates
an error.
To test, whether the required format is supported or not,
this is a test file: sls.idsp.
If the format is supported, a simulation of a collisions
of two black holes in the four-dimensional space time
with a duration of 120s will get visible. Note that this
requires a specific display device for realistic presentations
of simulations in the four dimensional space time including
general relativistics.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | switch ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-30-09: §M(1)P
requiredFormats without switch:
Conditional processing without a switch inside a rect is used
with requiredFormats for image/svg+xml and image/x-dsp+xml
on an animate element.
Between the supported and the unsupported format there is
an animate element without required formats.
A red comparison is provided below the blue one,
if the red test rectangle gets visible, this indicates
an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | requiredFormats ignored |
Squiggle 1.7 | fail | requiredFormats ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | requiredFormats ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-30-10: §M(1)P
switch with requiredFormats:
A switch inside a rect is used with requiredFormats for
image/x-dsp+xml on the left rectangle and image/svg+xml on the right
to switch between animate or title. For the left rectangle the title element
is accessible and the animation is not performed, on the right one the
animation is applied and the title not accessible.
Slightly larger gray rectangles behind show the correct behaviour including
the same title element.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | fail | title missing |
z2007-12-01-01: §M(1)P
switch in animateMotion with requiredFormats:
A switch is used with requiredFormats for image/png
to switch a mpath for an animateMotion to move a
blue square.
This is compared with a moved red square always
exactly covered by the blue square.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-12-01-02: §M(1)P
switch in animateMotion with requiredFormats:
A switch is used with requiredFormats for image/x-dsp+xml
(typically not supported format).
to switch a mpath for an animateMotion to move a
blue square.
This is compared with a moved red square always
exactly covered by the blue square.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
z2007-12-01-03: §M(1)P
animateMotion and mpath with requiredFormats:
requiredFormats for image/png is used to decide,
whether a mpath for an animateMotion to move a
blue square is used or not. Because image/png
has to be supported, this is no restriction at all.
This is compared with a moved red square always
exactly covered by the blue square.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-12-01-04: §M(1)P
animateMotion and mpath with requiredFormats:
requiredFormats is used with to decide,
whether a mpath for an animateMotion to move a
blue square is used or not. The mpath with
requiredFormat image/png has to be choosen,
the other formats are not supported.
This is compared with a moved red square always
exactly covered by the blue square.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | switch ignored |
Adobe | fail | switch ignored |
Squiggle 1.7 | fail | switch ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | switch ignored |
Test results for switch and conditional processing
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 2/16 |
Adobe | 2/16 |
Squiggle 1.7 | 2/16 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 2/16 |
Opera 10.60/ 11.00/11.60/ 12.00 | 6/16 |
externalResourcesRequired
z2006-08-18-01: §Q
animated images as externalResourcesRequired:
The xlink:href of an image element is animated
with a dur of 10s with repetition.
The five images are prefetched and created by
PHP with an output retarded about 5s.
The random generated images cover a blue circle.
The image element has an opacity of 0.6.
The visible effect is a blue circle covered with
image changes every 2 seconds. Because the
image is never empty, there will be always the
blue circle and the image visible.
Because externalResourcesRequired is set
to true, the animation starts after all
images are loaded.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | attribute ignored |
Adobe | fail | attribute ignored |
Squiggle 1.7 | fail | attribute ignored, displays immediately and the
time between too images is not 2s as required |
Opera 9.01/9.10/ 10.60/ 11.00 | fail | attribute ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | ok | - |
Opera 11.60/ 12.00 | fail | infinite load? |
prefetch
z2006-08-18-02: §Q
prefetched images in animation:
The xlink:href of an image element is animated
with a begin of 6s and a dur of 25s with
repetition.
The five images are prefetched and created by
PHP with an output retarded about 5s.
The random generated images cover a blue circle.
The image element has an opacity of 0.6.
The visible effect is a blue circle covered with
images changing every 5 seconds. Because the
image is never empty, there will be always the
blue circle and the image visible.
Even if one image after the other is prefetched,
there is time enough to have them before they
are needed in the animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | element ignored |
Adobe | fail | element ignored |
Squiggle 1.7 | fail | element ignored, displays immediately and the
time between too images is not 2s as required |
Opera 9.01/9.10/ 10.60/ 11.00 | fail | element ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | ok | - |
Opera 11.60/ 12.00 | fail | infinite load? |
common attributes
SVG Tiny 1.2 introduces several new attributes applicable for all elements. Those
are animatable, but there is no requirement for a specific interpretation of those elements, therefore within
a test there it is typically only possible to check, that those animations can be used as syncbase-values.
Only for role="tooltip" a specific behaviour is expected, respectively if the value is different from 'tooltip'
for the elements title and desc or the role="tooltip" is not present at all. Then it is strongly recommended
to display such elements not as a tooltip. This can be indeed tested, if the viewer has such a capability at all.
z2008-12-17-01: §IQ
animated role:
Test if the animation of a role attribute can be used as a syncbase-value to begin
a fill animation of the shape and to deactivate the tooltip role of the title and
desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is set to something different; desc not displayed as a tooltip |
z2008-12-18-01: §IQ
animated about:
Test if the animation of a about attribute can be used as a syncbase-value to begin
a fill animation of the shape and to shift the tooltip role of the title and
desc from the centered shape to the outer shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is shifted to a different element; desc not displayed as a tooltip |
z2008-12-19-01: §IQ
animated property:
Test if the animation of a property attribute can be used as a syncbase-value to begin
a fill animation of the shape and to switch the tooltip property of the title and
desc to presentation for the 10s the fill is changed.
The property references the role tooltip functionality as provided by WAI-ARIA, what
is semantically the same as to use it as a tooltip.
The animation begins with a click or activate of the shape.
It is not required that the viewer can identify a tooltip from another namespace
specified in another namespace with a curie, therefore title and desc may be
presented as tooltips, but this is not required, if they are presented in such
a way, however then they have to be switched off for the duration of the fill animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if property is set to something different; desc not displayed as a tooltip |
z2008-12-20-01: §IQ
animated content:
Test if the animation of a content attribute of the metadata element can be used as a
syncbase-value to begin a fill animation of the shape and to deactivate the
tooltip role of the title and desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-02: §IQ
animated datatype:
Test if the animation of a datatype attribute of the metadata element can be used as a
syncbase-value to begin a fill animation of the shape and to deactivate the
tooltip role of the title and desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-03: §IQ
animated typeof:
Test if the animation of a typeof attribute of the metadata element can be used as a
syncbase-value to begin a fill animation of the shape and to deactivate the
tooltip role of the title and desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-04: §IQ
animated resource:
Test if the animation of a resource attribute of the metadata element can be used as a
syncbase-value to begin a fill animation of the shape and to deactivate the
tooltip role of the title and desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-05: §IQ
animated rel:
Test if the animation of a rel attribute can be used as a syncbase-value to begin
a fill animation of the shape and to deactivate the tooltip role of the title and
desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-06: §IQ
animated rev:
Test if the animation of a rev attribute can be used as a syncbase-value to begin
a fill animation of the shape and to deactivate the tooltip role of the title and
desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-20-07: §IQ
animated class:
Test if the animation of a class attribute can be used as a syncbase-value to begin
a fill animation of the shape and to deactivate the tooltip role of the title and
desc of the shape for the 10s the fill is changed.
The animation begins with a click or activate of the shape.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows title as tooltip, even if role is changed to another value; desc and metadata not displayed as a tooltip |
z2008-12-21-01: §IQ
animation and tooltips:
It is possble to realise tooltips in different ways, using the role tooltip or the related
property on a metadata element is one method, using declarative animation is the
other. Both methods can be combined. Using the first method in the case the
feature animation is not available in an incomplete implementation and a stylable
tooltip using declarative animation else.
This is tested here. Because animation is not optional, the declarative tooltip
has to be displayed, if the mouse is over the blue or the green stroked shape.
The tooltip itself is partly opaque with the text and stroke in the blue, respectively
green range. There has to be no other tooltip.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides wrong error message |
Opera 9.01/9.10 | fail |
shows the title as tooltip, not the textArea |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail |
shows both the animated textArea as tooltip and the title as tooltip |
Test results for common attributes
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/11 |
Adobe | 0/11 |
Squiggle 1.7 | 0/11 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 0/11 |
Test results for Document Structure
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 3/42 |
Adobe | 4/42 |
Squiggle 1.7 | 4/42 |
Opera 9.01/9.10 | 3/42 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 9/42 |
Opera 10.60 | 11/42 |
Opera 11.00 | 10/42 |
Opera 11.60/ 12.00 | 7/42 |
Styling
"SVG Tiny 1.2 does not require support for CSS selectors applied to SVG content.
Authors must not rely on external, author stylesheets to style documents that are
intended to be used with SVG Tiny 1.2 user agents."
SVG Tiny 1.2 has no style element or style attribute, but has a class attribute.
In this situation it is not easy to apply CSS somehow except with animation.
z2006-08-18-11: §M(1)P
animate CSS properties:
Because CSS has a higher priority than XML,
CSS animation has to overwrite XML animation.
The color of the circles change
from light blue to dark blue and not from
light red to dark red. Something red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong priorities |
Adobe | fail | wrong priorities |
Squiggle 1.7 | fail | wrong priorities |
Opera 9.01/9.10 | ok | - |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00 | fail | two wrong animations in the middle (left and right) |
Opera 11.60/ 12.00 | fail | several wrong animations |
z2007-10-30-20: §M(1)P
attributeType and specifity:
The main indication for a failed test is the appearance of red.
With the triangle is tested, that the points attribute of a
polygon is animated using attributeType auto or XML and
is not animated if CSS is used, because there is no CSS property
points applicable for the polygon element.
With the rectangle similar things are tested for width and
height of a rectangle. CSS properties like width and height
exist, but are not applicable for a rectangle, therefore if
the attributeType CSS is not used and because there are no
properties width or height related to the SVG rectangle, the
XML has to be used.
Note, that SVG tiny 1.2 specifies, that if the viewer knows
a property of the given attributeName, this property has to
be animated for 'auto'. CSS has properties width and height.
Do they have to be taken resulting in no animation, if the
viewer knows them? This is obviously nonsense and is not
tested here, this needs to be fixed in the specification.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | attributeType ignored |
Adobe | ok | - |
Squiggle 1.7 | fail | attributeType ignored |
Opera 9.01/9.10 | fail | attributeType ignored; rectangle with rounded corners nonsense |
Opera 9.50 alpha/beta | fail | rectangle with rounded corners nonsense |
Opera 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for Styling
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/2 |
Adobe | 1/2 |
Squiggle 1.7 | 0/2 |
Opera 9.01/9.10 | 1/2 |
Opera 9.50 alpha/beta | 0/2 |
Opera 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 1/2 |
Painting: Filling, Colors and Paint Servers
fill properties
New for SVG Tiny 1.2 is the possibility to use a paint server like a gradient for fill (see gradient section).
fill-opacity is available in SVG Tiny 1.2 too - examples from SVG1.1 can be taken to test this.
stroke properties
New for SVG Tiny 1.2 is the possibility to use a paint server like a gradient for stroke (see gradient section).
stroke-opacity is available in SVG Tiny 1.2 too - examples from SVG 1.1 can be taken to test this.
Another change is about paths of length zero. In SVG 1.1 they have only to be stroked, if stroke-linecap
is round. Now they have to be stroked too, if stroke-linecap is square. The alignment is in the direction of
the direction given by previous segments of the subpath or the following segments of subpath, without a
direction available in the subpath, the direction is that of the x-axis.
This is described in detail in appendix C.6 of the specification.
z2006-08-19-01: §M(1)P
animate a subpath of length zero:
A path containing a subpath with length zero is
animated. The zero length subpath is centered in
the svg. stroke-linecap is round or square animated
too.
The animation of the d attribute of the path as a
visible effect of some breathing pseudo rotation.
An underlying red path simulates the behaviour using
a subpath with a length very small compared to
the stroke-width.
If something red gets visible, an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | subpath not painted |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | subpath not painted |
z2007-06-08-01: §M(1)P
animate and subpath of length zero:
Three paths containing a subpath with length zero
or animated to zero are animated.
The paths have stroke-linecap square.
An underlying red path simulates the behaviour using a
subpath with a length very small compared to the stroke-width.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | subpath not always painted |
Adobe | fail | subpath not painted |
Squiggle 1.7 | fail | subpath not correctly aligned in animation, red comparsion not displayed |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | subpath not painted |
z2007-06-09-01: §M(1)P
animate and subpath of length zero:
Two paths containing subpaths animated to zero
length without directionality are presented.
The paths have stroke-linecap square.
An underlying red path simulates the behaviour using
an additional set animation for the appearance of the
zero length subpaths.
If something red gets visible, an error is occured.
The end of the test is indicated by a change of the
background to gray.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | subpath not painted |
Adobe | fail | subpath not painted |
Squiggle 1.7 | fail | red comparsion not displayed, mysterious residuals from painting |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | subpath not painted |
The meaning of stroke-dasharray has changed in SVG Tiny 1.2. Now it is specified that the
stroke-linecaps have to be applied to the begin and the end of each dash. This is inconsistent
with the meaning of a pattern of strokes and dashes. Now stroke-dasharray is something like
a shortcut to define subpaths, not a one dimensional pattern as in previous specifications.
Interplay with other stroke properties are explicitely undefined now as well as the behaviour
in combination with subpath, in other words, the behaviour is almost undefined and not
reliable for authors. If authors need something useful and reliable, a pattern with a defined
visible effect has to be calculated and constructed individually using subpaths.
z2006-08-19-02: §SM(1)P
stroke-dasharray and stroke-linecap:
stroke-linecap of a dashed path is animated within 6s with
repetition using the values round;square;butt.
This is compared with the behaviour of subpath
with a length of stroke-width/50000, this is
approximately zero for normal painting conditions.
If something larger in red gets visible for butt,
an error occured. Red with round or square is
always an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , last dash painted,
seems to be a logical model of dashes and gaps as intervals, including the begin, excluding the end |
Squiggle 1.7 | fail | mysterious residuals from painting, last dash not painted |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | last dash not painted |
Test results for stroke properties
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/4 |
Adobe | 0/4 |
Squiggle 1.7 | 0/4 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 1/4 |
vector-effect non-scaling stroke
z2007-03-06-01: §M(1)P
animated vector-effect non-scaling-stroke:
The y-direction of the blue paths is scaled with a
factor of 0.5.
The vector-effect animated discrete between non and
non-scaling-stroke all 2s.
This changes mainly the linecaps fo the given paths.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation, wrong error message |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-19-11: §M(1)P
vector-effect non-scaling-stroke:
The size of a blue path is scaled down in 6s from
1 to 0.1. The vector-effect is non-scaling-stroke.
This means the stroke does not change with
scaling. The final display is given in gray for
comparison. If something red gets visible,
an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-19-12: §M(1)P
animate vector-effect:
The size of a blue path is scaled down in 20s
with several values for x and y to zero.
The vector-effect is non-scaling-stroke.
This means the stroke does not change with
scaling. The vector-effect is set to none at
22s. If something red gets visible,
an error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | vector-effect ignored if y scaled to zero |
z2006-09-02-01: §M(1)P
vector-effect non-scaling-stroke:
The y-direction of the blue paths is scaled down in 6s from
1 to 0. The vector-effect is non-scaling-stroke.
This means the stroke does not change with
scaling. The final display for the three lines on the
left is for linecap butt no display,
for square a square aligned parallel to the x and
y directions, for round a circle.
The final display for the two lines on the right
is that they are aligned horizontal.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | vector-effect ignored if y scaled to zero |
z2006-09-02-02: §M(1)P
vector-effect non-scaling-stroke:
The direction (1,-1) of the blue paths is scaled down in 6s from
1 to 0. The vector-effect is non-scaling-stroke. The center of
the image is (0,0).
This means the stroke does not change with
scaling. The final display for the line for linecap square is a
square aligned parallel to the direction (1,-1).
This shows mainly how it is possible to align the remaining
square. Either an additional rotate has to be used or a
matrix can be used to scale down a desired direction
(without animation of course).
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | vector-effect ignored if y scaled to zero |
z2006-09-02-03: §AM(2)P
vector-effect non-scaling-stroke:
Application: using vector-effect non-scaling and
animateTransform rotate to realize a one
dimensional harmonic oscillation.
A blue circle represents the harmonic
oscillator, the trajectory is displayed as
a gray path.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | vector-effect ignored if y scaled to zero |
z2006-09-03-01: §M(1)P
vector-effect non-scaling-stroke:
width and height of the svg are changed
with constant viewBox.
The stroke-width of the blue rectangles is 10.
The vector-effect is non-scaling-stroke.
This means the stroke does not change with
the change of the size.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-09-03-02: §M(1)P
vector-effect non-scaling-stroke:
viewBox of the svg is changed with constant width and
height of the svg.
The stroke-width of the rectangles is 10.
The vector-effect is non-scaling-stroke.
This means the stroke does not change with
the change of the size. This is simulated with an
animation of the stroke-width of other rectangles.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-09-03-03: §IQ
vector-effect non-scaling-stroke:
width and height of the svg are set to 50%.
The stroke-width of the blue path is 95 and
the vector-effect is non-scaling-stroke.
This means the stroke does not change with
the change of the size of the viewport.
Change the size of the viewport between
large and small to test if the stroke-width
remains the same on the viewport (95px
of the monitor).
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | if the size of the rectangle gets
smaller than two times the stroke, the inner parts of stroke is reduced. |
z2007-02-06-11: §M(1)P
vector-effect non-scaling-stroke and stroke-dasharray:
The width of a horizontal blue path is scaled down in 6s from
1 to 0.1. The vector-effect is non-scaling-stroke.
This means the stroke-dasharray is calculated in the screen coordinate space
and not in the user coordinate system and does therefore not change with
scaling. If something red gets visible,
an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-02-06-12: §M(1)P
vector-effect non-scaling-stroke and gradient:
The width of a horizontal blue path is scaled down in 6s from
1 to 0.1. The vector-effect is non-scaling-stroke.
This means the linearGradient is calculated in the screen coordinate space
and not in the user coordinate system and does therefore not change with
scaling. If something red gets visible,
an is error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | property ignored |
z2007-02-06-13: §M(1)P
vector-effect non-scaling-stroke and gradient:
The width of an almost horizontal blue path is scaled down in 6s from
1 to 0.1. The vector-effect is non-scaling-stroke.
This means the linearGradient with gradientUnits objectBoundingBox
scales down, because it is given relative to the size of the path.
If something red gets visible,
an is error occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for vector-effect non-scaling-stroke
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/12 |
Adobe | 0/12 |
Squiggle 1.7 | 1/12 |
Opera 9.01/9.10 | 1/12 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 6/12 |
viewport-fill
z2006-08-19-21: §M(2)P
animate viewport-fill for svg:
The viewport-fill is animated in the
blue range within 20s. If it is not
completely and always somehow blue
an error is occured. If it is red, the
animation is not applied.
A black stroked rectangle indicates
the viewBox. Note that parts of the
viewport outside the viewBox is
filled too.
In the middle there is a rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-02-01: §M(2)P
animate viewport-fill for image:
The viewport-fill for an image with a partly
transparent PNG (centered blue, magenta, yellow
colors and yellow at the corners, else transparent)
is animated in the
blue range within 20s. If the viewport is not
completely and always somehow blue
an error is occured. If it is red, the
animation is not applied.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , PNG not transparent |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-02-02: §M(2)P
animate viewport-fill for video:
The viewport-fill for a video
is animated in the
blue range within 20s. If the viewport is not
completely and always somehow blue
an error is occured. If it is red, the
animation is not applied.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , video ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | video ignored |
Opera 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | only one frame of the video displayed |
z2007-11-02-03: §M(2)P
animate viewport-fill for animation:
The viewport-fill for an animation
is animated in the
blue range within 20s. If the viewport is not
completely and always somehow blue
an error is occured. If it is red, the
animation is not applied.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , animation ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | animation ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | wrong size of viewport (only behind referenced document?) |
Opera 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | wrong for overlap with rectangle |
z2008-12-21-11: §M(2)P
animate viewport-fill for
foreignObject:
The viewport-fill for an (empty) foreignObject
is animated in the blue range within 20s.
Since the proposed recommendation foreignObject
establishes a new viewport, therefore viewport-fill
is applicable.
If the viewport is not
completely and always somehow blue
an error is occured. If it is red, the
animation is not applied.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , animation ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | animation ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for viewport-fill
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/5 |
Adobe | 0/5 |
Squiggle 1.7 | 0/5 |
Opera 9.01/9.10 | 0/5 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 2/5 |
Opera 10.60/ 11.00 | 5/5 |
Opera 11.60/ 12.00 | 3/5 |
viewport-fill-opacity
z2006-08-19-22: §M(2)P
animate viewport-fill-opacity for svg:
The viewport-fill-opacity is animated
for a dark blue viewport-fill from 0 to 1
in 20s. Note that parts of the
viewport outside the viewBox is
filled too.
A rectangle on the left has the
same animation on a background
with the system paint server 'Window'
for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-03-01: §M(2)P
animate viewport-fill-opacity for image:
The viewport-fill-opacity for an image with a partly
transparent PNG (centered blue, magenta, yellow
colors and yellow at the corners, else transparent)
is animated in the
blue range within 20s.
On bottom right there is a small rectangle having the same
fill-opacity animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , PNG not transparent |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | property ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-03-02: §M(2)P
animate viewport-fill-opacity for video:
The viewport-fill-opacity for a video
is animated in the
blue range within 20s.
On bottom right there is a small rectangle having the same
fill-opacity animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , video ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | video ignored |
Opera 10.60 | ok | - |
Opera 11.00 | fail | small rectangle not animated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
z2007-11-03-03: §M(2)P
animate viewport-fill-opacity for animation:
The viewport-fill-opacity for an animation
is animated in the
blue range within 20s.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , animation ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10 | fail | animation ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | viewport-fill-opacity not in
the complete viewport animated (only behind referenced document?) |
Opera 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | viewport not animated |
z2008-12-21-21: §M(2)P
animate viewport-fill-opacity for foreignObject:
The viewport-fill-opacity for an (empty) foreignObject
is animated in the blue range within 20s.
Since the proposed recommendation foreignObject
establishes a new viewport, therefore viewport-fill
is applicable.
The viewport-fill-opacity for an animation
is animated in the
blue range within 20s.
On bottom right there is a small rectangle having the same
fill animation as the viewport for comparison.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , animation ignored |
Squiggle 1.7 | fail | property ignored, wrong error message |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | animation ignored |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for viewport-fill-opacity
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/5 |
Adobe | 0/5 |
Squiggle 1.7 | 0/5 |
Opera 9.01/9.10 | 0/5 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 2/5 |
Opera 10.60 | 5/5 |
Opera 11.00 | 4/5 |
Opera 11.60/ 12.00 | 3/5 |
opacity
opacity is in SVG Tiny 1.2 only applicable for the image element.
z2006-08-20-01: §Q
animate opacity
of images:
For four JPEG images the opacity is changed from
1 to 0 or from 1 to 0 within 12s with a begin at 2s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-05-11-01: §PS(?)
animate opacity
and inheritance:
Opacity is only applied to the image element in tiny version 1.2.
Normally it is not inherited from a parent element. This happens
only, if the opacity property is explicitely set to inherit.
In the first test from 2s to 12s the opacity of a g element is
animated form 0 to 1. The g element contains a JPEG and a
blue rectangle on the left. On the right there is a mirrored image
and a blue rectangle with the same visible effects without a g
element.
The static opacity value of the g is 0.2. The opacity is
explicitely inherited by the image. Therefore the opacity of
the image changes within the animation, the rectangle not.
In the second test the opacity of the image is animated from 14s to
26s. This overwrites the value inherit therefore the opacity of the
g element has no visible effect anymore.
If there is a difference between the test image and the mirrored
comparison or the rectangles are animated or a red rectangle gets
visible, an error is occured.
After 26s the opacity is at its initial value again.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | behaviour as for SVG 1.1 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | problem with value inherit
in 9.01/9.10 and else behaviour as for SVG 1.1 |
solidColor, solid-color and solid-opacity
z2006-08-20-11: §M(1)Q
animate URI for solidColor paint server
:
Three solidColor elements are specified, referenced by
two rectangles for fill. The solidColor paint servers
are exchanged all 2s between the two rectangles.
All colors are in the blue range. Red or black indicates
that the element seems to be ignored completely.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-08-28-01: §M(2)P
animate solid-color
:
One solidColor element is specified with animated
solid-color, referenced by a rectangle on the left for fill.
The stroke of the rectangle is used for comparsion
with the same animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-08-28-02: §M(1)Q
animate solid-opacity
:
One solidColor elements is specified with animated
solid-opacity, referenced by a rectangle
on the left for fill.
A second rectangle on the right is used for comparsion
with the same animations for fill-opacity.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | ignored |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-08-28-03: §M(1)Q
animate solidColor, solid-color, solid-opacity
:
Three solidColor elements are specified with animated
solid-color and solid-opacity, referenced by
two rectangles for fill. The solidColor paint servers
are exchanged all 2s between the two rectangles.
All colors are in the blue range. Red or black indicates
that the element seems to be ignored completely.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for solid color
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/4 |
Adobe | 0/4 |
Squiggle 1.7 | 3/4 |
Opera 9.01/9.10 | 0/4 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 4/4 |
Gradients
SVG Tiny 1.2 specifies gradients. This is simplified compared to SVG Full 1.1.
gradientTransform and spreadMethod are not available, the reference to another
gradient is not available too. For the radial gradients the attributs fx and fy are
skipped. The offset of the stop element can only be a number,
not percentage.
z2006-08-31-01: §Q
animate x1, x2, y1, y2 of
linearGradient:
x1, x2, y1, y2 are animated starting after 3s, animating each of
them for 3s. The result is, that the gradient is turned around.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-02: §Q
animate stop-opacity of
linearGradient:
stop-opacity of a linearGradient is animated,
resulting in a time dependent mixing with an
underlying linearGradient with the visible effect
of something like a motion of colours.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-03: §Q
animate stop-color of
linearGradient:
stop-color of a linearGradient is animated,
resulting in something like a motion of colours
or propagating anharmonic waves.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-04: §Q
animate gradientUnits of
linearGradient:
gradientUnits is switched all 3s from objectBoundingBox
to userSpaceOnUse or back.
With objectBoundingBox the gradient is symmetric with
a mirror axis from bottom left to top right.
With userSpaceOnUse the gradients gets asymmetric starting
with a large yellow area top left.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-05: §M(1)P
animate offset of
linearGradient:
offset of a linearGradient is animated starting after 2s for 10s.
For comparsion a blue rectangle is animated generating a
similar visible effect. The red part of the linearGradient
is always covered completely with the blue rectangle.
Because the blue rectangle has fill-opacity 0.8, the colour
is a little bit different with the red part of the linearGradient
below it, indicating that it is painted at all.
Anyway, if something red gets visible or the blue rectangle
has the same colour inside and outside of the black box
an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-11: §Q
animate cx, cy, r of
radialGradient:
cx, cy and r of a radialGradient are animated starting after 3s, animating each of
them for 3s. The center goes from top left to the right, then down, then the
radius is animated.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-12: §Q
animate stop-opacity of
radialGradient:
stop-opacity of a radialGradient is animated,
resulting in a time dependent mixing with an
underlying radialGradient with the visible effect
of something like a motion wave pattern of colours.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-13: §Q
animate stop-color of
radialGradient:
stop-color of a radialGradient is animated,
resulting in something like a motion of colours
or propagating incoming anharmonic radial waves.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-14: §Q
animate gradientUnits of
radialGradient:
gradientUnits is switched all 3s from objectBoundingBox
to userSpaceOnUse or back.
With objectBoundingBox the gradient is centered.
With userSpaceOnUse the gradients shrinks and jumps
to the bottom right.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-31-15: §M(1)P
animate offset of
radialGradient:
offset of a radialGradient is animated starting after 2s for 10s.
For comparsion a blue circle is animated generating a
similar visible effect. The red part of the radialGradient
is always covered completely with the blue circle.
Because the blue circle has fill-opacity 0.8, the colour
is a little bit different with the red part of the radialGradient
below it, indicating that it is painted at all.
Anyway, if something red gets visible or the blue circle
has the same colour inside and outside of the black box
an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Opera 10.0 alpha/beta/ 10.0 | fail | accuracy problems |
Test results for Gradients
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/10 |
Adobe | 0/10 |
Squiggle 1.7 | 0/10 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.60/ 11.00/11.60/ 12.00 | 10/10 |
Opera 10.0 alpha/beta/ 10.0 | 9/10 |
Test results for Painting
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/42 |
Adobe | 0/42 |
Squiggle 1.7 | 5/42 |
Opera 9.01/9.10 | 13/42 |
Opera 9.50 alpha/beta/ 9.52 | 26/42 |
Opera 10.0 alpha/beta/ 10.0 | 25/42 |
Opera 10.60 | 32/42 |
Opera 11.00 | 31/42 |
Opera 11.60/ 12.00 | 28/42 |
Coordinate Systems, Transformations and Units
transform
SVG Tiny 1.2 adds a new value to the transform attribute to prevent elements from
being transformed. If implemented as described in the specification, an inverse
matrix has to be calculated. Of course not every matrix has an inverse. This
may cause errors or crashes. Anyway it is possible to get the same effect
in another way.
SVG 1.1 and early drafts of SVG Tiny 1.2
had problems with paced animateTransforms, lately solved as far as possible
with the proposed recommendation.
The remaining unavoidable problem is a paced rotation with a rotation center
changing within the animation. There exists no paced behaviour for such a
transformation, but the current formula is a least correct, if the center remains
constant.
to animateTransform is undefined now in SVG Tiny 1.2.
z2006-08-20-21: §M(1)P
animation and constrained transformations:
transform ref(svg) is applied to a centered blue rectangle.
The rectangle is nested in three g elements, one of them
is animated with skewX with some nasty values,
one with rotate and one with some nasty scale values.
All these animateTranform have no effect on the blue
rectangle, covering all the time completely the
red reference rectangle.
For comparsion there is a gray stroked rectangle on top without
transform ref(svg) and with vector-effect non-scaling-stroke
indicating the current transformations.
The center is marked with a gray rectangle. If something red gets
visible, maybe the attribute is ignored.
If the gray rectangle is not visible, this is an error
too. If the viewer crashes, presumably it tries to
calculate the inverse of a matrix without an inverse.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00 | (ok) | minor problems with skewing and vector-effect non-scaling-stroke
|
Opera 11.60/ 12.00 | fail | problem with infinite skew |
z2006-08-20-22: §M(1)P
animation and constrained transformations:
transform ref(svg,-100,-100) is applied to a centered blue rectangle.
The rectangle is nested in three g elements, one of them
is animated with skewX with some nasty values,
one with rotate and one with some nasty scale values.
All these animateTranform has no effect on the blue
rectangle, covering all the time completely the
red reference rectangle.
For comparsion there is a gray stroked rectangle on top without
transform ref(svg) and with vector-effect non-scaling-stroke
indicating the current transformations.
The center is marked with a gray rectangle. If something red gets
visible, maybe the attribute is ignored.
If the gray rectangle is not visible, this is an error
too. If the viewer crashes, presumably it tries to
calculate the inverse of a matrix without an inverse
or some other unfixed error with skewX = 90
or scale = 0 gets visible.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10 | fail | ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00 | (ok) | minor problems with skewing and vector-effect non-scaling-stroke |
Opera 11.60/ 12.00 | fail | problem with infinite skew |
z2007-03-24-02: §IM(2)Q
zoomAndPan and constrained transformations:
A blue square is hidden behind a gray square. Transformations
are constrained for the blue square using ref(svg, 0,0).
This means, if the user zooms, scrolls or rotates the document,
parts of the not transformed blue square gets visible.
The dark gray text with ref(svg,0,0) covers a light blue text
with ref(svg), this means with panning parts of the light
blue text will get visible too.
The height of the svg element is set already to 120% to
simplify the procedure of panning.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | attribute ignored |
Adobe | fail | attribute ignored |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10/ 10.60/ 11.00/11.60/ 12.00 | fail | attribute ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | text does not get visible if panned |
z2007-03-19-01: §M(1)P
animation and constrained transformations:
transform ref(svg) is applied to a centered blue rectangle.
The viewBox of the element svg is animated.
A light blue rectangle indicates the initial position of the
blue rectangle relative to the viewport.
Because ref(svg) does not constrain changes of the viewBox,
the blue rectangle moves relative to the viewport and is
enlarged at the end of the animation.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-03-19-02: §M(1)P
animation and constrained transformations:
transform ref(svg) is applied to a centered blue rectangle.
width and height of the element svg are animated.
Because ref(svg) does not constrain changes of the viewport,
the blue rectangle is enlarged relative to the surrounding viewport.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-24-01: §M(1)P
animateTransform with unsupported type:
Unfortunately the transform type matrix is not animatable in SVG 1.1 and SVG tiny 1.2.
In SVG tiny 1.2 it is noted, that for an unsupported value of type animateTransform has
to be ignored. Because matrix is not supported, such an animateTransform is ignored.
This means especially, that it cannot even be used as a source of a syncbase value,
resulting in no dynamical effect in this test.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | (ok) | (xml:id ) |
Adobe | (ok) | (xml:id ) |
Squiggle 1.7 | fail | wrong error message |
Opera 9.01/9.10 | fail | animateTransform
with unsupported type not ignored as syncbase-value |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animateTransform
type matrix not ignored (what is pretty useful, but not correct for SVG tiny 1.2) |
z2006-08-21-01: §M(1)P
additive values animateTransform:
There were some wrong assertions about additive animations
in early SVG Tiny 1.2 drafts. This checks only, that the correct behaviour
as described again by the proposed recommendation is implemented.
Here a scale animateTransform is tested - if something
red gets visible an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-21-02: §M(1)P
additive from-to animateTransform:
There were some wrong assertions about additive animations
in early SVG Tiny 1.2 drafts. This checks only, that the correct behaviour
as described again by the proposed recommendation is implemented.
Here a translate from-to animateTransform is tested - if something
red gets visible an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-21-03: §M(1)P
additive from-by animateTransform:
There were some wrong assertions about additive animations
in early SVG Tiny 1.2 drafts. This checks only, that the correct behaviour
as described again by the proposed recommendation is implemented.
Here a translate from-by animateTransform is tested - if something
red gets visible an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | discrete animation |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-21-04: §M(1)P
additive by animateTransform:
There were some wrong assertions about additive animations
in early SVG Tiny 1.2 drafts. This checks only, that the correct behaviour
as described again by the proposed recommendation is implemented.
Here a translate by animateTransform is tested - if something
red gets visible an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-01-16-01: §M(1)P
paced translation with animateTransform:
A paced translation with animateTransform is compared with
a simulation using the Euclidian distance to determine the
timing and an animateMotion. All animations are using values
indicated with a gray triangle and thin black squares. The
animated squares, blue for the test, red for the simulation, dark
red for the animateMotion, have to interpolate between the
three black squares. The blue testcase has to cover the red
comparisons completely. If something red gets visible, an
error is occured. The Euclidian distance is used for the behaviour
described in SVG Tiny 1.2.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | fail | wrong behaviour from SVG1.1 |
Opera 9.01/9.10 | fail | wrong behaviour from SVG1.1 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-01-16-02: §M(1)P
paced scaling with animateTransform:
A paced scaling with animateTransform for a blue rectangle
is compared with a simulation for a red rectangle
using the Euclidian distance to determine the
timing and an animateMotion of the corners of the rectangle as
orange circles as defined in SVG Tiny 1.2.
In light gray the animation is simulated as defined in SVG 1.1.
All animations are using values indicated with thin black rectangles. The
animated rectangles have to interpolate between the
three black rectangles. The blue testcase has to cover the red or orange
comparisons completely to get a paced and interpolated animation.
If something red or orange gets visible, an error is occured compared with
the definition of the calcMode paced.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | fail | wrong animation, interpolates but is not paced |
Squiggle 1.7 | fail | wrong behaviour from SVG1.1 |
Opera 9.01/9.10 | fail | wrong behaviour from SVG1.1 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60 | fail | wrong behaviour |
Opera 11.00/11.60/ 12.00 | ok | - |
z2007-01-16-03: §M(2)P
paced rotate with animateTransform:
A paced rotate with animateTransform for a square is tested:
Does the animation interpolate between the given
values of the attribute?
The blue testcase has to meet the given values indicated as
gray squares within the animation. If not all values are
met, an error is occured.
Note that with the wrong definition of a paced animateTransform
of SVG 1.1 the animation does not meet the values.
The given formula for a distance in SVG 1.2 Tiny
uses only the angle now, avoiding problems with early drafts.
Because there is no paced behaviour for a rotation with changed
rotation center, calcMode paced should not be used by authors for
such animation. This tests only that the animation interpolates
between the values.
If the given values are met, this is a weak indication, that the
formula from SVG 1.2 Tiny is used or some other notion of
distance, calcMode linear, discrete or spline will meet the values too of
course, therefore this is not a very critical test.
It is not an indication for a paced animation in general.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | (ok) | interpolates but obviously not paced |
Adobe | (ok) | interpolates but obviously not paced |
Squiggle 1.7 | fail | wrong behaviour from SVG1.1 |
Opera 9.01/9.10 | fail | wrong behaviour from SVG1.1 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60 | (ok) | interpolates somehow |
Opera 11.00/11.60/ 12.00 | ok | - |
z2006-08-21-21: §M(1)P
paced rotate with animateTransform:
In the proposed recommendation of SVG tiny 1.2
the formula for paced rotation was modified,
because the previous formula did not fit to a paced
behaviour and even worse tried to add angles and
lengths.
Because there is no behaviour fitting to the definition
of calcMode paced, if the rotation center is modified
within the animation, the current formular just uses
the angle. If the rotation center is not changed, this
results indeed into a paced rotation.
Authors should avoid calcMode paced, if the rotation
center is not constant and calculate the timing themselves
and using keyTimes.
However, here the formula is tested.
This does not mean, that this is a recommended or
desirable use case for paced rotations.
The visible effect is a blue square in an
rotational motion with two diskrete jumps at the end.
If a red or dark red square
gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong animation |
Squiggle 1.7 | fail | provides error messages |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong animation |
z2007-12-02-01: §M(1)P
animateTransform for animation:
animateTransform is applied to an animation element.
For a comparison a red rectangle behind it is transformed
in the same way.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no animation element |
Adobe | fail | no animation element |
Squiggle 1.7 | fail | no animation element |
Opera 9.01/9.10 | fail | no animation element |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong underlying value |
z2007-12-03-01: §M(1)P
animateTransform for video:
animateTransform is applied to a video element.
For a comparison a red rectangle behind is transformed
in the same way.
The format used for the video is an application/ogg.
Because it is not required to support this format, at least
the light blue viewport has to cover the red rectangle,
if the application/ogg is not displayed.
Red indicates an error.
Note for authors: transformations for video should be avoided for mobile devices because it may
cause high processing power requirements, for details see the related section of the recommendation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no video element |
Adobe | fail | no video element |
Squiggle 1.7 | fail | no video element |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video element |
Opera 10.60/ 11.00 | (ok) | video not repeated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
z2007-12-04-01: §M(1)P
animateTransform for pinned video:
animateTransform is applied to g with a partly transparent
yellow rectangle and a video element with transformBehavior pinned.
This means, the video is not transformed
For a comparison a red rectangle is provided
The format used for the video is an application/ogg.
Because it is not required to support this format, at least
the light blue viewport has to cover the red rectangle,
if the application/ogg itself is not displayed.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no video element |
Adobe | fail | no video element |
Squiggle 1.7 | fail | no video element |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video element |
Opera 10.60/ 11.00 | (ok) | video not repeated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
z2007-12-04-02: §M(1)P
animateTransform for pinned90 video:
animateTransform is applied to g with a partly transparent
yellow rectangle and a video element with transformBehavior pinned90.
This means, the video is not transformed
For a comparison a red rectangle is provided
The format used for the video is an application/ogg.
Because it is not required to support this format, at least
the light blue viewport has to cover the red rectangle,
if the application/ogg is not displayed.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no video element |
Adobe | fail | no video element |
Squiggle 1.7 | fail | no video element |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video element |
Opera 10.60/ 11.00 | (ok) | video not repeated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
z2007-12-04-03: §M(1)P
animateTransform for pinned180 video:
animateTransform is applied to g with a partly transparent
yellow rectangle and a video element with transformBehavior pinned180.
This means, the video is not transformed
For a comparison a red rectangle is provided
The format used for the video is an application/ogg.
Because it is not required to support this format, at least
the light blue viewport has to cover the red rectangle,
if the application/ogg is not displayed.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no video element |
Adobe | fail | no video element |
Squiggle 1.7 | fail | no video element |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video element |
Opera 10.60/ 11.00 | (ok) | video not repeated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
z2007-12-04-04: §M(1)P
animateTransform for pinned270 video:
animateTransform is applied to g with a partly transparent
yellow rectangle and a video element with transformBehavior pinned270.
This means, the video is not transformed
For a comparison a red rectangle is provided
The format used for the video is an application/ogg.
Because it is not required to support this format, at least
the light blue viewport has to cover the red rectangle,
if the application/ogg is not displayed.
Red indicates an error.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | no video element |
Adobe | fail | no video element |
Squiggle 1.7 | fail | no video element |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video element |
Opera 10.60/ 11.00 | (ok) | video not repeated |
Opera 11.60/ 12.00 | fail | only first frame of video displayed |
Test results for transform
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 3/20 |
Adobe | 2/20 |
Squiggle 1.7 | 3/20 |
Opera 9.01/9.10 | 6/20 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0 | 10/20 |
Opera 10.60 | 15/20 |
Opera 11.00 | 17/20 |
Opera 11.60/ 12.00 | 10/20 |
viewBox
z2006-08-22-01: §Q
animation of the viewBox of an image and the svg:
viewBox of svg is animated for 12s with different
values. At 13s the viewBox of the svg is set to none.
The viewBox means effectively that sometimes
just a part of the image is shown or the displayed image is
smaller than the image element.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no set to none |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
preserveAspectRatio
z2006-08-22-11: §Q
animation of the preserveAspectRatio of svg:
In SVG Tiny 1.2 only 'meet' is
available, not 'slice', but all possibilities for 'align'.
Values are none;xMinYMin;xMaxYMax;xMinYMax;xMaxYMin
for width and height 90%- the viewBox of the svg is switched
at 13s and the animation is repeated to check them all.
viewport-fill in light blue is used to indicate the viewport of the svg.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , displayed PNG wrong, no viewport-fill |
Squiggle 1.7 | fail | wrong image size, no viewport-fill |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | (no viewport-fill in 9.01/9.10) |
z2007-11-01-01: §Q
animation of the preserveAspectRatio of video:
In SVG Tiny 1.2 only 'meet' is
available, not 'slice', but all possibilities for 'align'.
Values are none;xMinYMin;xMaxYMax;xMinYMax;xMaxYMin
for width and height 90% - the width of the video is switched
at 13s and the animation is repeated to check them all.
viewport-fill in light blue is used to indicate the viewport of the video.
The used video format application/ogg is not required to
be supported. This is checked with a switch for requiredFeatures and
requiredFormats.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no video |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | no video |
Opera 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | only one frame displayed |
z2007-11-01-02: §Q
animation of the preserveAspectRatio of animation:
In SVG Tiny 1.2 only 'meet' is
available, not 'slice', but all possibilities for 'align'.
Values are none;xMinYMin;xMaxYMax;xMinYMax;xMaxYMin
for width and height 90% - width and height of the animation is
switched at 13s and the animation is repeated to check them all.
viewport-fill in light blue is used to indicate the viewport of the animation.
The animation shows a simple centered blue stroked square.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no animation element |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no animation element |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-11-01-03: §Q
animation of the preserveAspectRatio of image:
In SVG Tiny 1.2 only 'meet' is
available, not 'slice', but all possibilities for 'align'.
Values are none;xMinYMin;xMaxYMax;xMinYMax;xMaxYMin
for width and height 90% - width and height of the image is
switched at 13s and the animation is repeated to check them all.
viewport-fill in light blue is used to indicate the viewport of the image.
The animation shows a simple centered blue stroked square.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no viewport-fill |
Squiggle 1.7 | (ok) | error message preserveAspectRatio for image not animatable, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | (no viewport-fill in 9.01/9.10) |
Test results for preserveAspectRatio
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/4 |
Adobe | 0/4 |
Squiggle 1.7 | 1/4 |
Opera 9.01/9.10 | 2/4 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 11.60/ 12.00 | 3/4 |
Opera 10.60/ 11.00 | 4/4 |
Test results for Coordinate Systems, Transformations and Units
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 3/25 |
Adobe | 2/25 |
Squiggle 1.7 | 4/25 |
Opera 9.01/9.10 | 8/25 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 14/25 |
Opera 10.60 | 20/25 |
Opera 11.00 | 22/25 |
Opera 11.60/ 12.00 | 14/25 |
Text
tspan is now available in SVG Tiny 1.2, but without any further attributes, only properties can be
used to style the content. The behaviour of the rotate attribute is changed compared with SVG (Tiny) 1.1.
If viewers do not implement it depending on the svg version, the behaviour will be unpredictable for
authors. The most confident way out for author will be to offer a rotate value for each glyph without
using any type of short form.
The new element textArea allows simplistic wrapping of text content within a given region. To break
the current line, the new element tbreak can be used. Some other new properties are specified to style
the textArea. Anyway to give text a meaning related to content, XHTML is necessary as before.
Author should keep in mind, that SVG is an image format. Even if text is used with the text or textArea
element, it is a kind of graphical element, not really something that contains semantic information,
because it cannot have more meaning as the elements text or textArea have, that it is text or text in
an area. There is no possibility to markup something as a heading or a paragraph without using
XHTML for example as a foreignObject. Elements with a specific semantic meaning in SVG are
for example title and desc, both can contain for example XHTML to specify in more detail the
specific meaning of text segments.
Another approach is to add the role or property attribute with a meaningful value derived from
XHTML or LML or DocBook or
DAISY or
FictionBook.
text
z2006-08-23-01: §M(1)P
set of text rotate:
A blue text 'text' is rotated with a set animation
from -10 to 10,20,30. This covers always the
red 'text' rotated to 10,20,30,30.
Note that this behaviour of SVG Tiny 1.2 is
different from the behaviour of SVG Tiny 1.1,
represented by a gray path with the value
10,20,30,0.
Note that Chris Lilley (member of the W3C SVG working group)
suggested an erratum for SVG 1.1 to specify the same behaviour
for rotate in SVG 1.1 and SVG 1.2.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , wrong initial value |
Squiggle 1.7 | fail | shows behaviour correct for SVG Tiny 1.1 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | shows behaviour correct for SVG Tiny 1.1 |
Opera 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-02-07-01: §M(1)P
animation of text rotate:
A blue text 'text' is rotated with animate
from -10 to 10,20,30. This covers always the
red 'text' rotated to 10,20,30,30.
Note that this behaviour of SVG Tiny 1.2 is
different from the behaviour of SVG Tiny 1.1,
represented by a gray path with the value
10,20,30,0.
Note that Chris Lilley (member of the W3C SVG working group)
suggested an erratum for SVG 1.1 to specify the same behaviour
for rotate in SVG 1.1 and SVG 1.2.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , wrong initial value |
Squiggle 1.7 | fail | wrong (?) error message, no display |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | shows discrete animation and final value correct for SVG Tiny 1.1 |
Opera 10.60/ 11.00/11.60/ 12.00 | fail | shows discrete animation |
Test results for text
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/2 |
Adobe | 0/2 |
Squiggle 1.7 | 0/2 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0 | 0/2 |
Opera 10.60/ 11.00/11.60/ 12.00 | 1/2 |
textArea
z2006-08-23-11: §M(2)Q
animation of x and y of textArea:
x and y of a blue textArea containing a poem are
animated. A gray rectangle is used for comparison
with the same animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-23-12: §M(2)Q
animation of width and height of textArea:
width and height of a blue textArea containing a silly poem
are animated. A gray rectangle is used for comparison
with the same animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | displayed but not animated |
z2006-08-23-13: §Q
animation of line-increment of textArea:
line-increment of a blue textArea containing a silly poem is
animated. A gray rectangle is used to show the size of the
textArea.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | text displayed but not animated |
z2006-08-23-14: §Q
animation of text-align of textArea:
text-align of a blue textArea containing a silly poem is
animated. A gray rectangle is used to show the size of the
textArea.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-23-15: §Q
animation of display-align of textArea:
display-align of a blue textArea containing a silly poem is
animated. A gray rectangle is used to show the size of the
textArea.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, no display |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for textArea
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/5 |
Adobe | 0/5 |
Squiggle 1.7 | 0/5 |
Opera 9.01/9.10 | 0/5 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 3/5 |
editable text fields
z2006-08-24-01: §IQ
animation of editable:
After a click on the small blue circle the textArea
with a silly poem can be edited for 10s, indicated by a
blue stroke of the rectangle.
With the small magenta circle editing can be stopped
alternatively.
However, this seems to be currently quite useless, because
it is not specified how to send the edited information back
to a server...
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no display |
Squiggle 1.7 | fail | wrong error message, textArea not displayed |
Opera 9.01/9.10 | fail | no display |
Opera 9.50 alpha | fail | never editable |
Opera 9.50 beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | does not switch back to not editable after 10s. Sometimes confused where to edit the text. |
Test results for Text
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/8 |
Adobe | 0/8 |
Squiggle 1.7 | 0/8 |
Opera 9.01/9.10 | 0/8 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | 3/8 |
Opera 10.60/ 11.00/11.60/ 12.00 | 4/8 |
Interactivity
pointer-events
pointer-events are available now in SVG Tiny 1.2. Examples can be used from SVG 1.1.
An additional new value is boundingBox, tested here.
z2006-08-24-11: §IQ
animation and pointer-events boundingBox:
After a click in the gray area the gray area will be
replaced by a blue star for 5s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no event |
Squiggle 1.7 | fail | wrong error message, no interactivity |
Opera 9.01/9.10/ 9.50 alpha | fail | no event |
Opera 9.50 beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-24-12: §IQ
animation and pointer-events boundingBox:
After a click in the gray area the gray area will be
replaced by a blue star for 5s. Because pointer-events
is set to none with the same click, this will only work once.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no event |
Squiggle 1.7 | fail | wrong error message, no interactivity |
Opera 9.01/9.10/ 9.50 alpha | fail | no event |
Opera 9.50 beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2007-10-29-01: §IQ
animation and pointer-events boundingBox:
After a click in the gray area the gray area will be
replaced by a blue star for 5s. Because pointer-events
is set to fill with the same click, after this click this will
only work, if the fill of the blue star is clicked, not the
complete boundingBox, even if the blue star is not visible
anymore.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , no event |
Squiggle 1.7 | fail | wrong error message, no interactivity |
Opera 9.01/9.10/ 9.50 alpha | fail | no event |
Opera 9.50 beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for pointer-events
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/3 |
Adobe | 0/3 |
Squiggle 1.7 | 0/3 |
Opera 9.01/9.10 | 0/3 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 3/3 |
focusable
z2006-08-25-01: §IQ
animation of focusable:
The blue stroked texts are focusable, a gray stroke
indicates that focusable is set to false.
Focus the text either with marking or with tab or
another focus mechanism offered by the viewer.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , ignored |
Squiggle 1.7 | fail | wrong error message, no animation |
Opera 9.01/9.10 | fail | xml:id , ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | 'focusable' always focusable, the numbers are never focusable |
Opera 10.60/ 11.00/11.60/ 12.00 | fail | ignored |
Navigation
SVG Tiny 1.2 provides a possibility to navigate between focusable elements.
Navigation may appear using a TAB key of the viewer or something like a joystick,
maybe the arrow keys of the keyboard. Two way navigation is related to the attributes
nav-next and nav-prev, for joysticks or keyboards there is nav-up, nav-down, nav-left,
nav-right, nav-up-right, nav-up-left, nav-down-right, nav-down-left. All of them have
the same possible values "url(fragment-identifier)", "auto", "self".
z2006-08-25-11: §IQ
animation of nav-next and nav-prev:
Eight text elements 1 to 8 are placed side by side.
nav-next and nav-prev are animated for the first editable text
'1' changing all 3s pointing to one of the other text elements.
If the animated nav-* elements points to a not visible target,
the current viewport has to jump to the element position to get it visible.
nav-next and nav-prev of the editable text '2' is animated with the
values auto and self all 2.5s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id , ignored, display incomplete |
Squiggle 1.7 | fail | wrong error messages, no navigation, wrong document size |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52 | fail | ignored |
Opera 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | no animation |
Test results for Interactivity
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/5 |
Adobe | 0/5 |
Squiggle 1.7 | 0/5 |
Opera 9.01/9.10/ 9.50 alpha | 0/5 |
Opera 9.50 beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 3/5 |
Extensibility
Main changes about the foreignObject compared to SVG Tiny 1.2 is, that the foreignObject
can now reference external documents. If both is provided, content inside the foreignObject and a
referenced external content, the reference takes precedence.
User agents are not required to support any particular
content types, even if it contains SVG Tiny 1.2 as a fragment or if it references an SVG document.
The idea of referenced documents is that another user agent can care about the content of a foreignObject.
Additionally SVG allows inclusion of elements and attributes with prefixes from foreign namespaces
anywhere with the SVG content.
z2008-12-22-01: §M(1)P
animation of foreignObject
having a viewport-fill:
x, y, width and height of an (empty) foreignObject with
viewport-fill in light blue is animated.
Due to the proposed recommendation foreignObject
establishes a new viewport, therefore viewport-fill
is applicable.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | viewport not displayed |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | viewport not displayed |
Opera 10.60/ 11.00 | ok | - |
Opera 11.60/ 12.00 | fail | displays after a fiew seconds a chequer and no viewport-fill anymore |
z2006-08-25-21: §Q
animation of xlink:href of foreignObject:
xlink:href, x, y, width and height of a foreignObject is animated
using different XHTML or SVG documents.
Support of any content in foreignObject is optional.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | (no display) |
Adobe | ok | (no display) |
Squiggle 1.7 | fail | wrong error message, (no display) |
Opera 9.01/9.10 | fail | larger disturbances in the display of the
referenced documents |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0 | fail | xlink:href not animated and in some builds disturbances |
Opera 10.60/ 11.00 | (ok) | scrollbars from XHTML only decorative, not functional |
Opera 11.60/ 12.00 | fail | confused transformations, displays sometimes a chequer |
Scripting
Scripting is possible now in SVG tiny 1.2, but no specific script language is required to be supported.
Authors have to use a switch element and the attributes requiredFeatures and requiredFormats.
requiredFeatures with the feature string for scripting can be used for example, to determine, wether
scripting is switched off by the user or is in general not available or wether it is available. With requiredFormats
it can be switched to content related to the supported script language or for content without scripting.
Authors have to take care about the accessibility of their content, especially if the document contains scripting.
If the scripting has something to do with the meaning or the content of the document, these attributes are
needed to create high quality or accessible documents.
z2007-03-15-01: §IQ
document containing ecmascript:
The display of this document depends on a switch of
the feature string for scripting and on the
requiredFormat text/ecmascript.
First case: feature string returns true for scripting and
requiredFormat true for text/ecmascript
and scripting is active - the user gets a request
to switch off scripting to continue with the test.
Second case: feature string returns true for scripting and
requiredFormat true for text/ecmascript
and scripting is not active - the user gets an
information about an error. The documents
contains only ecma-script. If the viewer is not
able to interprete this, it should have returned
fail for the feature string for this document.
Third case: feature string returns fail for scripting or
requiredFormat fail for text/ecmascript
and scripting is active anyway - the user will
see an animation and an information about
an error - scripting should be not available, if
the feature string returns fail in general.
Fouth case: feature string returns fail for scripting or
requiredFormat fail for text/ecmascript
and scripting is not active - the user will see
an animation.
Note that the featureString gives an information, wether
the feature is supported for this document or not, not if it is in
general possible that the feature can be supported under some
specific condiditions, in this case only if scripting is enabled.
With requiredFormat it is possible to specify, which script language
is required. The viewer has not to dertermine this by analysing
the document, if the author uses this.
If feature strings or requiredFormat have any benefit for authors,
the return value of the feature string has to depend on the specific
current conditions for the related document and user preferences,
not on a general philosophical statement of the viewer.
The scripting used in this document is similar to set animations
of the display property to none, respectively to block to display
the additional information to the user related to scripting.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | (ok) | (displays always alternate content) |
Adobe | (ok) | (displays always alternate content,
not possible to switch off scripting, security problem) |
Squiggle 1.7 | fail | wrong (?) error message
with activated scripting, displays always alternate content |
Opera 9.01/9.10 | (ok) | (displays always alternate content) |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | even if scripting is switched off, it
uses the feature string as true |
Animation
There are just a few changes in the animation chapter. Some are directly related to
attributes and example are available there.
Additionally wallclock values are not available anymore in SVG Tiny 1.2 for begin and
end. The value 'media' becomes useful with the elements video, audio and maybe
animation.
There is a notable clarification for accumulative behaviour, because SVG Tiny 1.2
references now SMIL 2.1 for the description of animative behaviour.
One idea is to reduce from-to-, from-by-, by-animations to values animations.
For accumulative behaviour the next repetition is added to the final result
of the previous repetition. For example from="10" by="10" for the second
turn animated from 30 to 40.
For a from-by-animation with the from="10" and by="10"
we get for the first turn from 10 to 20, for the second turn from 30 to 40.
This means, accumulative animation will normally contain jumps, if the
first value is not zero.
Note that SMIL 2.0/2.1 contain the same examples as SMIL animation,
but they do not fit anymore to the normative formula. Those problems are fixed in SMIL3.
animation target
The rules for problematic cases to identify the animation target are slightly different in SVG Tiny 1.2.
z2008-12-23-01: §M(2)P
animation target element:
fill (and stroke) of a path are animated in the blue range with
animate elements as direct children of the path element.
The animate element for the fill has an xlink:href="". SVG tiny 1.2
defines that this is the same as if xlink:href was not defined.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too, even if the circle is blue.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | ok | - |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | no animation of testcase |
z2008-12-23-02: §M(2)P
animation target element:
fill (and stroke) of a path are animated in the blue range.
The animate element for the fill has an xlink:href including the
current document name and a fragment identifier for the path.
This fits to the requirement, that the target element must be part
of the current SVG document fragment.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too, even if the circle is blue.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-23-03: §M(2)PF
animation target element:
If the target element is not part of the current SVG document fragment,
the animation has no effect, this means, it still can be used to derive syncbase-values.
fill (and stroke) of a path are animated in the blue range with
animate elements as direct children of the path element.
Another set animation has a not applicable target and is used as a syncbase-value
for the fill animation.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides error message, maybe fitting to SVG 1.1 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-23-04: §M(2)PF
animation target attribute:
If the attributeName is missing, the animation has no effect, this means,
it still can be used to derive syncbase-values.
fill (and stroke) of a path are animated in the blue range with
animate elements as direct children of the path element.
Another set animation has no attributeName and is used as a syncbase-value
for the fill animation.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides error message, maybe fitting to SVG 1.1 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-23-05: §M(2)PF
animation target attribute:
If the attributeName is not applicable, the animation has no effect, this means,
it still can be used to derive syncbase-values.
fill (and stroke) of a path are animated in the blue range with
animate elements as direct children of the path element.
Another set animation has a not applicable attributeName
and is used as a syncbase-value for the fill animation.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | provides error message, maybe fitting to SVG 1.1 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-23-06: §M(2)PF
animation target attribute:
If the attributeType is not applicable, respectively the attributeName not for the
attributeType, the animation has no effect, this means,
it still can be used to derive syncbase-values.
fill (and stroke) of a path are animated in the blue range with
animate elements as direct children of the path element.
Another set animation has a not applicable attributeType CSS for
an attributeName and is used as a syncbase-value for the fill animation.
Therefore fill and stroke have the same animation.
If something red appears, an error is occured.
If a circle behind the path gets visible, this indicates
an error too.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | attributeType ignored |
Opera 9.01/9.10 | fail | attributeType ignored |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for animation target
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/6 |
Adobe | 1/6 |
Squiggle 1.7 | 2/6 |
Opera 9.01/9.10 | 5/6 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 5/6 |
animateColor
The confusion, which values animateColor supports are clarified in SVG Tiny 1.2
in such a way, that in the section about animateColor is is noted now, that it supports color values, currentColor,
inherit and none. The table in 16.2.18 still notes, that the complete paint is available (what includes paint servers,
gradients etc). The explicite text in the definition of the element supersedes the
table, what is noted below the table.
z2008-12-25-01: §M(2)P
animateColor:
animateColor for a path is tested using different color values, a
(static) currentColor and a (static) inherit for fill.
stroke has the same animation using only the long hexadecimal notation.
If something red gets visible or stroke is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong interpretation of currentColor and inherit |
Squiggle 1.7 | ok | - |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-25-02: §M(2)P
animateColor:
animateColor for a path is tested using rgb color values, a (static) currentColor and an inherit for fill.
stroke has the same animation using only the long hexadecimal notation.
If something red gets visible or stroke is different from fill, an error is occured.
For comparison the small circle top left shows the inherited fill (end value) , the small circle bottom right
the currentColor (begin value).
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong interpretation of currentColor and inherit |
Squiggle 1.7 | fail | wrong interpretation of inherited animated values |
Opera 9.50 alpha/beta | fail | crashes |
Opera9.01/9.10/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong interpretation of inherited animated values |
z2008-12-25-03: §M(2)P
animateColor:
animateColor for a path is tested using rgb color values, a currentColor and a (static) inherit for fill.
stroke has the same animation using only the long hexadecimal notation.
If something red gets visible or stroke is different from fill, an error is occured.
For comparison the small circle top left shows the currentColor (end value) , the small circle bottom right
the inherited fill (begin value).
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong interpretation of currentColor and inherit |
Squiggle 1.7 | fail | wrong interpretation of currentColor animated values |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong interpretation of currentColor animated values |
z2008-12-25-04: §M(2)P
animateColor:
animateColor for a path is tested using different color values, a currentColor and an inherit for fill.
stroke has the same animation using only the long hexadecimal notation.
If something red gets visible or stroke is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong interpretation of currentColor and inherit |
Squiggle 1.7 | fail | wrong interpretation of animated currentColor and inherit |
Opera 9.50 alpha/beta | fail | crashes |
Opera9.01/9.10/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong interpretation of animated currentColor and inherit |
z2008-12-26-01: §M(2)P
animateColor:
animateColor for a path is tested using alternating none and different color values for fill,
what implies calcMode discrete.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If something red gets visible or stroke and the circle is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong timing |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong timing |
z2008-12-26-02: §M(2)P
animateColor:
animateColor for a path is tested using different color values and none for fill,
what implies calcMode discrete.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If something red gets visible or stroke and the circle is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | wrong timing |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong timing |
Test results for animateColor
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/6 |
Adobe | 0/6 |
Squiggle 1.7 | 1/6 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 1/6 |
animateMotion
z2008-12-28-01: §M(1)PF
animateMotion:
animateMotion is specified with an mpath element without xlink:href
and another one with an empty xlink:href.
According to SVG tiny 1.2 this means, that no motion will be applied to
the target element, an octagon.
However the animateMotion can be used to derive for example a syncbase-value,
here for a set animation of the stroke-width of the blue octagon.
This is compared with a simple set animation.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | values or path used |
Adobe | fail | values or path used |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-28-02: §M(1)PF
animateMotion:
animateMotion is specified with an mpath element without with xlink:href
and another one with an invalid xlink:href value, what represents an unsupported
value, therefore the xlink:href has to be ignored in SVG tiny 1.2.
According to SVG tiny 1.2 this means, that no motion will be applied to
the target element, an octagon.
However the animateMotion can be used to derive for example a syncbase-value,
here for a set animation of the stroke-width of the blue octagon.
This is compared with a simple set animation.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | values or path used |
Adobe | fail | values or path used |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-29-01: §M(1)PF
animateMotion:
animateMotion is specified with an invalid value for the keyPoints attribute
(the last character is a semicolon, therefore the last value is empty, what is not
correct for a keypoint, additionally this means, there is one keypoint more than
a keytime, what is invalid too).
According to SVG tiny 1.2 this means, that the keyPoints attribute is simply
ignored.
Therefore the blue octagon covers always the red octagon, having the same animation
without a keyPoints attribute.
If something red gets visible or the octagon does not move, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | (ok) | keyPoints always ignored |
Squiggle 1.7 | fail | semicolon ignored, not keyPoints |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | semicolon ignored, not keyPoints |
z2008-12-29-02: §M(1)PF
animateMotion:
animateMotion is specified with an invalid value for the keyPoints attribute
(there is one keypoint more than a keytime, what is invalid too).
According to SVG tiny 1.2 this means, that the keyPoints attribute is simply
ignored.
Therefore the blue octagon covers always the red octagon, having the same animation
without a keyPoints attribute.
If something red gets visible or the octagon does not move, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | (ok) | keyPoints always ignored |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animateMotion ignored,
not just keyPoints |
Test results for animateMotion
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/4 |
Adobe | 2/4 |
Squiggle 1.7 | 0/4 |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 2/4 |
additive and accumulate
z2008-12-26-11: §M(2)P
none additive animateColor:
animateColor for a path is tested using different color values and for fill.
The underlying value is none, therefore additive sum has to be ignored.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If something red gets visible or stroke and the circle is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera9.01/9.10 | fail | fill animation ignored |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-26-12: §M(2)P
none additive animateColor:
animateColor for a path is tested using different color values and none for fill,
what implies that additive sum is not applicable.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If something red gets visible or stroke and the circle is different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong |
Adobe | fail | wrong |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | additive, none interpreted as black |
z2008-12-26-13: §M(2)P
none additive animateColor:
animateColor for a path is tested using different color values and inherit for fill,
this inherits none, what implies that additive sum is not applicable.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If stroke and the circle are different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong |
Adobe | fail | wrong |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | additive, none interpreted as black |
z2008-12-26-14: §M(2)P
none additive animateColor:
animateColor for a path is tested using different color values and inherit for fill,
this inherits #600 in a first run and none after a restart, what implies that additive sum is
applicable for the first turn and not applicable after the restart.
stroke has the same animation using only the long hexadecimal notation for the color values
and a centered circle uses set animation to get the same effect.
If stroke and the circle are different from fill, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong |
Adobe | fail | wrong |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | always additive, none interpreted as black; 9.50 alpha/beta crashes after restarted trying to add something to none |
z2008-12-26-15: §IS
none additive animateColor:
animateColor for a path is tested using different color values and inherit for fill,
this inherits #600 or none. The animation is restarted several times and
additive="sum" is specified, what is not applicable and has to be ignored,
if the inherited value is none. If the blue button top left is clicked or activated,
the inherited fill is set to none for 20s, else is #600.
stroke has the same animation in the case, the button is not clicked or activated.
A small centered circle has the same animation in the case, the button is clicked
or activated.
A problem occurs, if the button is clicked or activated, while the animation runs,
because at the begin the viewer cannot know, whether the animation should be
additive or not. Therefore the viewer may update the behaviour when the inherited
value is set for the rest of the current turn. Other solutions are maybe possible too,
this is currently not specified.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | always additive , none interpreted as black; 9.50 alpha/beta crashes after trying to add something to none |
z2008-12-26-16: §IS
none additive animateColor:
A possibly additive animateColor for a path is tested using different color values for fill.
The initial underlying value is none, therefore for this additive sum is not applicable.
On the left there are some buttons (click or activate).
The top button starts a fill animateColor of 18s.
The button below sets the fill to #040. This set can be ended with the last button.
If the set button is used before the top button, the animateColor is additive.
If the set button is used while the animateColor is active, it replaces the animateColor,
if ended, the animateColor becomes visible again.
If the set button is not used, the animateColor is not additive due to the underlying value none.
A problem occurs, if set is used before the animateColor is started and the end button used,
while the animation runs, because at the begin the viewer cannot know, whether the
animateColor should be additive or not. Therefore the viewer may update the behaviour when
the underlying set animation is ended. Other solutions are maybe possible too,
this is currently not specified.
Two circles on the left show two possible color variations, the top one the none additive one,
that below the additive animation.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | fail | no or wrong animation |
Opera9.01/9.10 | fail | none not superseded by animation |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-27-01: §M(1)PF
none additive set:
additive has to be (only) ignored for a set animation in SVG tiny 1.2.
additive sum is applied to a set animation of stroke-width and compared
with a set animation without additive specified.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera9.01/9.10 | fail | additive not ignored |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-27-02: §M(1)PF
none accumulate set:
accumulate has to be (only) ignored for a set animation in SVG tiny 1.2.
accumulate sum is applied to a set animation of stroke-width and compared
with a set animation without accumulate specified.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-01: §M(1)P
accumulative by-animation:
They gray path is
the trajectory. If something red gets visible, an
error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10 | fail | adds always the underlying value again |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-02: §M(1)P
accumulative from-by-animation:
They gray path is
the trajectory. If something red gets visible, an
error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | xml:id |
Adobe | fail | xml:id |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-03: §M(1)P
accumulative from-to-animation:
Example as those of the SMIL recommendations.
red: Simulated correct behaviour of the testcase - if visible error!
gray: Wrong behaviour of SMIL examples
blue: testcase
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | ok | - |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-04: §M(1)P
accumulative by-animateTransform:
We have by="-1".
This is the same as values="0,-1" with additive sum.
According to SMIL2.1 the final result of the previous repetition
has to be added to the animation, indicated with
red rectangles. The blue testcase has to cover them always.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WekKit 528.16 | fail | wrong animation |
Adobe | fail | wrong animation |
Squiggle 1.7 | fail | funny error message within animation '1 >=1'? |
Opera 9.01/9.10 | fail | wrong animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-05: §M(1)P
accumulative values-animateTransform:
values animateTransform for scale.
According to SMIL2.1 the final result of the previous repetition
has to be added to the animation. Because it is 0 this is in this
case the same as a non accumulative animation, indicated with
red rectangles. The blue testcase has to cover them always.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WekKit 528.16 | fail | wrong animation |
Adobe | ok | - |
Squiggle 1.7 | fail | incomplete animation |
Opera 9.01/9.10 | fail | wrong animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-06: §M(1)P
accumulative values-animateTransform:
accumulative values animateTransform for scale.
According to SMIL2.1 the final result of the previous repetition
has to be added to the animation. Because it is 0 this is in this
case the same as a non accumulative animation, indicated with
red rectangles. The blue testcase has to cover them always.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WekKit 528.16 | fail | wrong animation |
Adobe | ok | - |
Squiggle 1.7 | fail | incomplete animation |
Opera 9.01/9.10 | fail | wrong animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-07: §M(1)P
additive from-to-animateTransform:
additive from-to-animateTransform for scale.
According to SMIL2.1 the final result of the previous repetition
has to be added to the animation. Because it is 0 this is in this
case the same as a non accumulative animation, indicated with
a red rectangle. The blue testcase has to cover it always.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WekKit 528.16 | fail | wrong animation |
Adobe | ok | - |
Squiggle 1.7 | fail | incomplete animation |
Opera 9.01/9.10 | fail | wrong animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2006-08-26-08: §M(1)P
additive from-by-animateTransform:
additive from-by-animateTransform for scale.
According to SMIL2.1 the final result of the previous repetition
has to be added to the animation. Because it is 0 this is in this
case the same as a non accumulative animation, indicated with
a red rectangle. The blue testcase has to cover it always.
If something red gets visible, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WekKit 528.16 | fail | wrong animation |
Adobe | fail | wrong animation |
Squiggle 1.7 | fail | no animation of test case |
Opera 9.01/9.10 | fail | wrong animation |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for additive and accumulate
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 4/16 |
Adobe | 7/16 |
Squiggle 1.7 | 6/16 |
Opera 9.01/9.10 | 3/16 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 12/16 |
event bubbling
z2008-06-07-01: §M(2)PS
beginEvent bubbling:
Due to SMIL2 the beginEvent bubbles not, due to SVGT1.2 it bubbles
(what is not really useful).
The xlink:href of the animation element on the right is animated with
several restarts.
This beginEvent of animate and 0s are used to start the fill animation
of the rectangle top left.
The fill animation of the rectangle bottom left is started using the
the beginEvent of the animation element.
If the beginEvent bubbles, the fill animations on the left are the same,
if not, the bottom left fill animations starts only once at 0s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animation element not displayed |
Adobe | fail | animation element not displayed |
Squiggle 1.7 | fail | show wrong error message |
Opera9.01/9.10 | fail | animation element not displayed |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00 | fail | crashes immediately |
Opera11.60/ 12.00 | ok | - |
z2008-06-07-02: §M(2)PS
endEvent bubbling:
Due to SMIL2 the endEvent bubbles not, due to SVGT1.2 it bubbles
(what is not really useful).
The xlink:href of the animation element on the right is animated with
several restarts.
This endEvent of animate is used to start the fill animation
of the rectangle top left.
The fill animation of the rectangle bottom left is started using the
the endEvent of the animation element.
If the endEvent bubbles, the fill animations on the left are the same,
if not, the bottom left fill animations will not start, because this animation
element does not end.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animation element not displayed |
Adobe | fail | animation element not displayed |
Squiggle 1.7 | fail | show wrong error message |
Opera9.01/9.10 | fail | animation element not displayed |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta | fail | event ignored |
Opera10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-06-07-03: §M(2)PS
repeatEvent bubbling:
Due to SMIL2 the repeatEvent bubbles not, due to SVGT1.2 it bubbles
(what is not really useful).
The xlink:href of the animation element on the right is animated with
several repeats.
This repeatEvent of animate and 0s are used to start the fill animation
of the rectangle top left.
The fill animation of the rectangle bottom left is started using the
the repeatEvent of the animation element.
If the repeatEvent bubbles, the fill animations on the left are the same,
if not, the bottom left fill animations starts only once at 0s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animation element not displayed |
Adobe | fail | animation element not displayed |
Squiggle 1.7 | fail | show wrong error message |
Opera9.01/9.10 | fail | animation element not displayed |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | (ok) | event bubbles |
Test results for event bubbling
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 0/3 |
Adobe | 0/3 |
Squiggle 1.7 | 0/3 |
Opera 9.01/9.10 | 0/3 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta | 1/3 |
Opera 10.0/ 10.60/ 11.00 | 2/3 |
Opera 11.60/ 12.00 | 3/3 |
accessKey
Additionally to the old notation, SVG tiny 1.2 introduces a new notation for accessKey to begin or to end
an animation. The new notation is a partly cryptic and abstract unicode number variant, partly a literal string
notation, with the advantage to specify even more exotic keys, maybe not even available on any keyboard directly.
z2008-12-30-01: §IQ
accessKey:
The accessKey notation new in SVG tiny 1.2 is tested for all available keys.
Alternatively the simple notation as available in SVG 1.1 can be used too,
represented here with the first 'a'.
The accessKey should be available without any additional key combinations
(at least for the keys available on the keyboard. If the key indicated next to
a circle is activated, the fill of the circle has to switch to dark blue for 20s.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | not available |
Adobe | fail | not available |
Squiggle 1.7 | fail | wrong error message |
Opera9.01/9.10 | fail | needs additional activation keys, wrong interpretation |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | needs additional activation keys, incomplete implementation |
timing attributes
z2008-12-31-01: §M(1)PF
invalid animate begin:
Some invalid begin values are provided for some animateMotions of octagons.
Because the values are invalid, this is equivalent to specify a begin of indefinite,
therefore the animations never start.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | fail | nonsense not ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | one invalid begin not ignored |
z2008-12-31-02: §M(1)PF
invalid animate end:
Some invalid end values are provided for some animateMotions of octagons.
Because the values are invalid, this is equivalent to specify no end attribute at all.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | fail | nonsense not ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | one or two invalid end not ignored |
z2008-12-31-03: §M(1)PF
invalid animate dur:
Some invalid dur values are provided for set animations of the stroke-width of a symmetrical cubic shape.
Because the values are invalid, this is equivalent to specify no dur attribute at all, resulting
in an indefinite duration.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | fail | not all nonsense ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10 | fail | not all nonsense ignored |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-31-04: §M(1)PFS
invalid animate repeatDur:
Some invalid repeatDur values are provided for set animations of the stroke-width of a symmetrical cubic shape.
Because the values are invalid, this is equivalent to specify no repeatDur attribute at all, resulting
in an indefinite duration.
Note that neither SVG nor SMIL note explicitly, that the repeatDur must be greater than 0 as
required for dur or repeatCount. In this sample it is assumed, that this is only forgotten and the
restriction has to be the same as for dur and repeatCount respectively.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | fail | not all nonsense ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | not all nonsense ignored |
z2008-12-31-05: §M(1)PF
invalid animate repeatCount:
Some invalid repeatCount values are provided for set animations of the stroke-width of a symmetrical cubic shape.
Because the values are invalid, this is equivalent to specify no repeatCount attribute at all.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | fail | not all nonsense ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | crashes |
Opera12.00 | fail | not all nonsense ignored |
z2008-12-31-06: §M(1)PF
invalid animate max:
Some invalid max values are provided for set animations of the stroke-width of a symmetrical cubic shape.
Because the values are invalid, this is equivalent to specify no max attribute at all, resulting
in an indefinite duration.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | (ok) | max always ignored |
Squiggle 1.7 | fail | not all nonsense ignored |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | not all nonsense ignored |
z2008-12-31-07: §M(2)PF
invalid animate min:
Some invalid min values are provided for set animations of the stroke-width for symmetrical cubic shapes.
Because the values are invalid, this is equivalent to specify no min attribute at all.
All seven shapes have the same timing for the stroke-width animation, if there is an deviation, an error is
occured..
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | (ok) | min always ignored |
Squiggle 1.7 | ok | - |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
Test results for timing attributes
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 3/7 |
Adobe | 2/7 |
Squiggle 1.7 | 1/7 |
Opera 9.01/9.10 | 1/7 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 2/7 |
interpolation
z2008-06-04-01: §M(1)P
discrete to-animation:
A to-animation is started three times and compared with a set animation
with the same timing.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | continuous animation |
Adobe | fail | wrong timing |
Squiggle 1.7 | fail | wrong timing |
Opera 9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | wrong timing |
z2008-12-31-11: §M(1)PF
invalid animate keyTimes:
Some invalid keyTimes are provided for an animateMotion of an octagon.
Because keyTimes are invalid, the attribute is ignored.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong timing |
Adobe | fail | wrong timing |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-31-12: §M(1)PF
invalid animate keySplines:
Some invalid keySplines are provided for an animateMotion of an octagon.
Because keySplines are invalid, the attribute is ignored.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | ok | - |
Adobe | ok | - |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10 | fail | not all nonsense ignored |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | ok | - |
z2008-12-31-13: §M(1)PF
invalid animate values:
Some invalid values are provided for an animateMotion of an octagon.
Because value list ends with a semicolon, the values attribute is invalid and the
animation has no effect. However this can be used as a syncbase value used to
start an animation of the stroke-width.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | animates (and xml:id) |
Adobe | fail | invalid empty value interpreted as zero (and xml:id) |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animation has an effect; final semicolon ignored |
z2008-12-31-14: §M(1)PF
invalid animate values:
Some invalid values are provided for an animateMotion of an octagon.
Because value list ends with a semicolon, the values attribute is invalid and the
has to be ignored, therefore the additionally specified from-to combination
applies.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation |
Adobe | fail | invalid empty value interpreted as zero |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10/ 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | empty value ignored instead of invalid attribute ignored |
z2008-12-31-15: §M(1)PF
invalid animate from:
Some invalid or unsupported from attribute values are provided for an animateMotion of an octagon.
Attributes with unsupported values have to be ignored, therefore the animation is the same as a to
animation.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | fail | nonsense not ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10 | fail | crashes |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | nonsense not ignored |
z2008-12-31-16: §M(1)PF
invalid animate to:
Some invalid or unsupported to attribute values are provided for an animateMotion of an octagon.
Attributes with unsupported values have to be ignored as if not specified, therefore the by attribute
is applied, which is specified too and else ignored if the to attribute could have been supported.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | nonsense not ignored |
Adobe | fail | nonsense not ignored |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10 | fail | crashes |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | not by used instead of nonsense to |
z2008-12-31-17: §M(1)PF
invalid animate by:
Some invalid by attribute values are provided for an animateMotion of an octagon.
Because the by attribute is invalid, the animation has no effect.
However this can be used as a syncbase value used to
start an animation of the stroke-width.
If something red appears, an error is occured.
Test results
user-agent | result | comment |
profile | SVG Tiny 1.2 | - |
WebKit 528.16 | fail | wrong animation (and xml:id) |
Adobe | fail | wrong animation (and xml:id) |
Squiggle 1.7 | fail | provides error message |
Opera9.01/9.10 | ok | - |
Opera9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | fail | animation has an effect |
Test results for interpolation
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 1/8 |
Adobe | 1/8 |
Squiggle 1.7 | 0/8 |
Opera 9.01/9.10 | 2/8 |
Opera 9.50 alpha/beta/ 9.52 10.0 alpha/beta/ 10.0/ 10.60/ 11.00/11.60/ 12.00 | 2/8 |
Test results for Animation
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 8/51 |
Adobe | 13/51 |
Squiggle 1.7 | 16/51 |
Opera 9.01/9.10 | 14/51 |
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta | 25/51 |
Opera 10.0/ 10.60/ 11.00 | 26/51 |
Opera 11.60/ 12.00 | 27/51 |
Results
Test results for SVG Tiny 1.2 complements without animation or timed elements
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 8/145 |
Adobe | 10/145 |
Squiggle 1.7 | 17/145 |
Opera 9.01/9.10 | 40/145 |
Opera 9.50 alpha/beta | 68/145 |
Opera 9.52 | 69/145 |
Opera 10.0 alpha/beta/ 10.0 | 68/145 |
Opera 10.60/ 11.00 | 85/145 |
Opera 11.60/ 12.00 | 69/145 |
Test results for SVG Tiny 1.2 complements for animation and timed elements
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 8/190 |
Adobe | 13/190 |
Squiggle 1.7 | 16/190 |
Opera 9.01/9.10 | 14/190 |
Opera 9.50 alpha | 57/190 |
Opera 9.50 beta | 58/190 |
Opera 9.52 | 59/190 |
Opera 10.0 alpha/beta | 60/190 |
Opera 10.0 | 61/190 |
Opera 10.60/ 11.00 | 48/190 |
Opera 11.60/ 12.00 | 44/190 |
Test results SVG Tiny 1.2 complements and changes compared to SVG Tiny 1.1
user-agent | SVG tiny 1.2 |
user-agent | SVG tiny 1.2 |
WebKit 528.16 | 16/335 |
Adobe | 23/335 |
Squiggle 1.7 | 33/335 |
Opera 9.01/9.10 | 54/335 |
Opera 9.50 alpha | 125/335 |
Opera 9.50 beta | 126/335 |
Opera 9.52 | 128/335 |
Opera 10.0 alpha/beta | 128/335 |
Opera 10.0 | 129/335 |
Opera 10.60/ 11.00 | 133/335 |
Opera 11.60 | 113/335 |
Opera 12.00 | 107/335 |
Note, that because xml:id
is used in many tests, it
cannot be expected, that they work with the older viewers. Taking into account this, the results of
Opera 9.50 alpha/beta/ 9.52/ 10.0 alpha/beta/ 10.0
indicate already a useful implementation of some parts of the new features of tiny 1.2.
Opera10.60/ 11.00/ 11.60/ 12.00 interprete the new audio and video elements and switches with the requiredFormats. Because they have bugs with the interpretation, the score for these elements is lower than for the
previous versions switching to the alternative - this means, with the newer version audio and video become available, but this exposes more bugs than with older versions, where gaps covered these bugs ;o)