SVG Conformance Suite Implementation Status

Release 2.0 - 27 January 2001

This document describes the results of particular SVG implementations tested against the SVG Conformance Test Suite. The goal is to demonstrate that every part of the SVG Candidate Recommendation specification can be implemented, as required by the SVG Candidate Recommendation exit criteria. For this, each BE test must be passed by at least one implementation.

This is not an exhaustive test of all SVG implementations; the implementations listed here are the ones that were readily available at the time of conformance testing. This is also not a formal test, and thus does not rank the implementations. The purpose is purely to show that the SVG specification can be and has been implemented, and to demonstrate a good degree of interoperability between implementations.

Implementations Tested

The following table lists the implementations that were tested as well as the particular version of each implementation. You are suggested to check the implementation sites for the latest conformance results.

  Implementation Version Availability
(a) Adobe Build 2.0x41 (2.0x40 for paint-colIntProp-BE-05) Internal only (as of 2001.01.26)
(b) CSIRO SVG Toolkit 2001.01.23 Internal only (as of 2001.01.26)
(c) Batik 1.0beta2rc1 Development release available via Apache CVS system.
(d) Ionic Unknown Evaluation version available on request
(e) Jackaroo 2000.06.29 Discontinued public release (merged into Batik).
(f) JASC Web Draw Preview Release 4. Publically available.

Legend

Type Description
Yes Implementation passes test
No Implementation does not pass test
Maybe? Implementation passes most of the test, but not enough to give a full pass.
Unknown The implementation has not been tested.

Results

Test Case Name Adobe (a) CSIRO (b) Batik (c) Ionic (d) Jackaroo (e) JASC (f) Comments
rendering-orderGr-BE-01 Y Y Y Y Y Y  
rendering-text-BE-02 Y Y Y Y Y Y  
rendering-shape-BE-03 Y Y Y Y Y Y  
               
structure-empty-BE-01 Y Y Y Y Y Y  
structure-nested-BE-02 Y Y Y Y Y Y  
structure-basicG-BE-03 Y Y Y Y Y Y  
structure-defs-BE-04 Y Y Y Y Y Y  
structure-symbol-BE-05 Y Y Y Y N (e) Y (e) incorrect symbol placement.
structure-image-BE-06 Mostly (a) Y Y Mostly (d) Mostly (e) Mostly (f) (a) Adobe only fails with 'image' reference to *.svg.
(d) Svg images rendered, but incorrectly. PNG and JPEG images are fine
(e) not SVG images (f) not SVG images
structure-switch-BE-07 N (a) N (b) Y N (d) N N (f) (a) Switch not implemented
(b) CSIRO doesn't support 'switch'.
(d) Switch is supported, but seemingly not requiredFeatures, so test fails - seems odd to have systemLanguage test for English on the switch element itself, too. (f)'switch' not supported
structure-lang-BE-08 N (a) N (b) Y (c) Mostly (d) Mostly (e) N (a) Switch not implemented
(b) Switch not implemented
(c)Correct except for edge case where no user language selected
(d) default case (no test) in switch not being triggered
(e) Two small flaws:1) if no user language not set, default case not trigered 2) uses old 'system-language' not newer 'systemLanguage'.
structure-allElem-BE-09 N (a) N (b) Mostly (c) Y Mostly (e) N (a) Switch not implemented
(b) CSIRO doesn't support 'switch'.
(c) default case not taken.
(e) default case not taken
structure-extRef-BE-10 N (a) N (b) Y Mostly (d) N N (a) Adobe doesn't support external references.
(b) CSIRO doesn't supportsupport external references. (f) external reference displayed, but style handled incorrectly
structure-imggamma-BE-11 Y N N Y N N Java 2D does not use PNG gAMA chunk
               
style-selector-BE-01 Y Y Y Y Y N  
style-selector-BE-02 Y Y Y N (d) Y N (d) id and attr selectors not implemented
style-selector-BE-03 Y Some (b) Y N Y N (b) CSIRO supports child but not sibling and first-child selectors
               
coords-units-BE-01 Y Y Y Some (d) Y Mostly (f) (d) em and ex treated as px (f) em and percent incorrect
coords-transforms-BE-02 Y Y Y Y Y Y  
coords-viewBox-BE-03 Y Y Y Y some (e) N (e)  no clip with 'slice'
coords-unitsProc-BE-04 Y Y Y N (d) Y Some (f) (d) all percent to user conversion tests failed (f) passes subtests 1, 3 and 5
coords-unitsProc-BE-05 Y Y (b) Y Mostly N Mostly (f)  
               
path-lines-BE-01 Y Y Y Y Y Y  
path-curves-BE-02 Y Y Y Y Y Y  
path-curves-BE-03 Y Y Y Y Y Y  
path-curves-BE-04 Y Y Y N (d) Mostly (e) Some (d) elliptical arcs incorrect.
(e) MAZ and MAAA wrong
(f) 3 of 6 correct
               
shapes-rect-BE-01 Y Y Y Mostly (d) Y Y (d) radius of rounded corners 50% of correct value
shapes-ellipse-BE-02 Y Y Y Y Y Y  
shapes-circle-BE-03 Y Y Y Y Y Y  
shapes-line-BE-04 Y Y Y Y Y Y  
shapes-polygon-BE-05 Y Y Y Y Y Y  
shapes-polyline-BE-06 Y Y Y Y Y Y  
               
text-text-BE-01 Y some (b) Y Y Y N (b) CSIRO doesn't do underlines and line-throughs
text-tspan-BE-02 Y N (b) Y Mostly (d) Y (e) N (b) CSIRO hasn't implemented tspan yet.
(e) spacing of last character on line slightly odd.
text-textOnPath-BE-03 Y N (b) N some (d) N N (b) CSIRO hasn't implemented textPath yet.
(d) text not lined up on path. tspan affecting rest of text element? dx and dy not relative to baseline?
text-tref-BE-04 Y N (b) Y N N N (b) CSIRO hasn't implemented tref yet.
text-textAnchor-BE-05 Y some (b) some (c) N N N (b) CSIRO doesn't support textPath
(c) Batik does textPath in a different namespace.
text-whiteSpace-BE-06 Y Y Y Y Y Some  
text-altGlyph-BE-07 Y N N N N N  
text-i18n-BE-09 Y some (b) some(c) some (d) N N (b) CSIRO does Polish, Russion and Greek correctly.
(c) Batik does not do vertical text and unicode bidi override
(d) some spacing problems, no tofu for vertical. check number of tofu for Japanese
text-alignment-BE-10 Y some (b) N N some (e) N (b) CSIRO hasn't implemented tspan or baseline-shift (e) text-anchor OK
text-alignment-BE-11 Y N (b) N N N N (b) CSIRO doesn't handle vertical text yet.
text-decoration-BE-12 Y N Mostly (c) Y Mostly (e) N (c) 3/4 correct.
(e) no blue underline on last subtest
text-selection-BE-13 Y N Y N (d) N (e) N (f) (d) no text selection implemented
(e) no text selection implemented
(f) WebDraw is an editor, text selection done through a GUI
text-spacing-BE-14 Y N (b) N N N N  
text-font-BE-15 Y Y Y Mostly (d) Y N (d) not finding a monospaced font from the list, otherwise ok
text-font-BE-16 Y N (b) Mostly (c) N Nearly (e) N (b) CSIRO doesn't handle font-weights correctly, it also has problems with the style elem.
(c) 'bolder' not bolder
(e) Jackaroo only fails on the lighter CSS value
text-textLength-BE-17 N Y N N N N  
text-extTref-BE-18 N N Y N N N  
               
paint-fill-BE-01 Y Y (b) N Mostly (d) N Mostly (f) (b) CSIRO passes all that are shown, doens't support icc-color (but gets correct color for non-ICC)
(d) Passes all except ICC, which is black.
(f) Passes all except ICC, which is black.
paint-stroke-BE-02 Y Y Y Y Y Y  
paint-markers-BE-03 N Y N Some (d) N Y (d) does not position marker correctly wrt the marker position (uses top left instead of centre) or rotate correctly wrt path direction
paint-markers-BE-04 N Y N N (d) N Y (d) Draws two out of three markers (start and end of line, not other points); other defects as previous test.
paint-colIntProp-BE-05 Y N Y N (d) N Some (f) (d) nearest neighbor instead of bilinear or bicubic
(f) not linear subtest
paint-inherit-BE-06 Y Y Y Y Y Y  
               
color-datatypes-BE-01 Y Y Y Y Y Y  
color-property-BE-02 Mostly (a) N Y Mostly (d) N Mostly (f) (a) Adobe only supports currentColor on 'fill' and 'stroke'
(d) Ionic only supports currentColor on 'fill' and 'stroke'
(f) gradient incorrect
color-colorProf-BE-03 N (a) Y N N N N (a) Adobe does not yet support 'color-profile' property (added after Aug2 spec)
               
gradPatt-linearGr-BE-01 Y Y Y Y Y Some (f) (f) Not supported on text
gradPatt-linearGr-BE-02 Y Y Y Mostly Mostly Y  
gradPatt-linearGr-BE-03 Y Y Y Y Y Y  
gradPatt-radialGr-BE-04 Y Y Y Y Y Some (f) (f) Not supported on text
gradPatt-radialGr-BE-05 Y Y Y Mostly (d) Mostly (e) Y (d) second test, should be oval not round (object bounding box is not square)
(e) second test is circular not oval
gradPatt-stop-BE-06 Y Y Y Mostly (d) Y Mostly (f) (f) angle of gradient incorrect
gradPatt-pattern-BE-07 Y almost (b) Y Y N Some (b) CSIRO has to update to latest pattern spec
gradPatt-referenc-BE-08 Y Y N Mostly (d) N N  
gradPatt-transfrm-BE-09 Y Y Y N N Mostly  
gradPatt-stop-BE-10 Y Y Y N Y Mostly (f) (f) angle of gradient incorrect
               
masking-clipPath-BE-01 Y Y Y Y N N  
masking-clipPath-BE-02 Y Y Y N (d) N N (d) clips red rect and most annotation text.
masking-clipRule-BE-03 Y Y Y Y N N  
masking-groupOpac-BE-04 Y Y Y some (d) Y Y (d) group opacity seems to be assuming all children fully opaque?
masking-mask-BE-05 Y N Y N N N  
masking-mask-BE-06 Y N Y N N N  
masking-property-BE-07 Y N (b) N N N N (b) The clip:rect(..) property seems to cause the viewer to go into an infinite loop! CSIRO hasn't implemented the clip property.
masking-clipPath-BE-08 Y Y (b) Mostly (c) N N N (b) CSIRO clipping leaves the clip edges jaggy. Spec states that clipping acts as if a 1-bit mask?
(c) Batik does not implement the hidden overflow value
masking-vportClip-BE-09 Y Y Y N N N  
               
filters-many-BE-01 Y N (b) Y N N Y (f) (b) CSIRO hasn't implemented filters.
(f) geometry incorrect due to nested svg element, not germane to test purpose
filters-blend-BE-02 Y N Y N N N
filters-colorMtrx-BE-03 Y N Y N N Mostly (f) (f)  not saturate test
filters-transfer-BE-04 Y N Y N N Mostly (f) . (f)  not table test
filters-composite-BE-05 Y N Y N N N  
filters-convolve-BE-06 Y N Y N N Y  
filters-diffuseLt-BE-07 Y N Y N N N  
filters-specularLt-BE-08 Y N Y N N N  
filters-lights-BE-09 Y N Y N N N  
filters-morph-BE-10 Y N Y N N Y  
filters-turb-BE-11 Y N Y N N Y  
filters-blur-BE-12 Y N Y N N Mostly (f)  
(f) no clipping to object bounding box
filters-feImage-BE-13 Y N Y N N N  
filters-feTile-BE-14 Y N Y N N N  
filters-merge-BE-15 Y N Y N N Some (f) (f) not aligned with crosshairs, correct color and opacity
filters-dispMap-BE-16 Y N Y (c) N N Some (f) (c) Batik displays PNG with incorrect gamma, but does displacement correctly.
(f) geometry incorrect, incorrect gamma
               
interact-zoomPan-BE-01 Y Y N N (d) N (e) N (f) (d)  does not disable zoom/pan
(e) n/a - not a dynamic viewer
(f) n/a - editor, not a dynamic viewer
interact-zoomPan-BE-02 Y Y Y Y N (e) Y (e) n/a - not a dynamic viewer
interact-bubble-BE-04 Y some (b) N N N (e) N (f) (b) CSIRO hasn't implemented tspan, linking works (when target file is renamed), the onmouseover and onmouseout events don't seem to be working and the bubbling seems to always occur.
(e) n/a - not a dynamic viewer
(f) n/a - editor, not a dynamic viewer
interact-pEvents-BE-05 Y N N N N (e) N (f) (e) n/a - not a dynamic viewer
(f) n/a - editor, not a dynamic viewer
interact-pEvents-BE-06 Y N N N N (e) N (e) n/a - not a dynamic viewer
interact-onload-BE-07 Y N N N N (e) N (e) n/a - not a dynamic viewer
interact-cursor-BE-08 N Y N N N N  
               
linking-outBound-BE-01 Mostly (a) some (b) Y N (d) some (e) N (a) Works except for link to internal object
(b)(e) CSIRO and Jackaroo only support linking to external SVG files.
(d) No hyperlinking implemented
linking-xlinkAttr-BE-02 Y Y (b) Y N N N (b) CSIRO only uses the xlink:href attribute at the moment, others are ignored.
linking-inBound-BE-03 N Y N N N N  
linking-view-BE-04 N Y N N N N  
linking-view-BE-05 N Y N N N N  
               
script-eventDom-BE-01 Y Y N N (d) Y N (d) Gives 'test passed' without any interaction
script-uiEvents-BE-02 Y Some (b) N N N N (b) CSIRO only catches the onmousedown, onmouseup, onclick and onmousemove events.
               
animation-overall-BE-01 Y Some (b) N Mostly (d) N N (f) (b) CSIRO hasn't implemented animateMotion yet.
(d) rotate not done on text, animation should freeze not repeat
(f) No animation editing capability
animation-href-BE-02 Y N N Some (d) N N (d) repeats, no interactivity so should not trigger
animation-targetElt-BE-03 Y Y N N N N  
animation-targetAtt-BE-04 Y Y N Mostly (d) N N (d) repeats forever rather than freezing; other than that, correct
animation-timing-BE-05 Y N N N N N  
animation-values-BE-06 Y Some (b) N N N N (b) CSIRO hasn't implemented animateMotion or spline calcMode , for discrete and linear calcModes CSIRO requires a keyTimes attribute.
animation-values-BE-07 Y Some N N N N  
animation-values-BE-08 Y Some N N N N  
animation-add-BE-09 Y N N Some (d) N N (d) does some repeats then stops, bars don't come to right place
animation-inherit-BE-10 Y N N Mostly (d) N N (d) repeats forever rather than freezing; other than that, correct
animation-motion-BE-11 Y Y N N N N  
animation-motion-BE-12 Y Y N N N N  
animation-extRef-BE-13 N Y N N N N  
               
fonts-fontElement-BE-01 Y Y N N N N  
               
metadata-sample-BE-01 Y N (b) N Y N (e) Y (b) CSIRO viewer fails because the SVG doesn't validate (but it isn't supposed to!)
(e) fails due to clipPath, not germane to test purpose
               
extend-multiNS-BE-01 Y N N N N (e) N (e) n/a - not a dynamic viewer
               
dom-core-BE-01 Y Y (b) N N N (e) N (b) CSIRO doesn't make the document object available too easily!
(e) n/a - not a dynamic viewer
dom-svg-BE-02 Some Y (b) N N N (e) N (b) CSIRO passes this test using the Java language bindings rather than the ECMAScript bindings.
(e) n/a - not a dynamic viewer
dom-featureString-BE-03 Y Y N N N (e) N (e) n/a - not a dynamic viewer
dom-eventListener-BE-04 Y N N (c) N N (e) N (c) Batik may pass if another event was used?
(e) n/a - not a dynamic viewer
               
Total (Pass/Num.Tests)             127/127

Authors: W3C SVG Working Group
Comments to: svg-testsuite-comments@w3.org
Last Updated: $Date: 2001/02/01 03:58:16 $