SVGT 1.2 Requirements

W3C Working Draft 10 August 2006

This version:
Latest version:
Previous version:
Andrew Emmons, BitFlash; <aemmons@bitflash.com>


This document specifies requirements for SVG Tiny 1.2, a backwardly-compatible update of SVG Tiny 1.1 which adds some new features from SVG 1.2 add adds other features based on implementor and designer feedback on SVG Tiny 1.1.

Status of this document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

This document is the second public working draft of the SVG Tiny 1.2 requirements. It compares how the SVG Tiny 1.2 Candidate Recommendation met the requirements listed in the first draft of the requirements, and in one case softens a requirement that could not be met. The requirements are grouped into those derived from use cases for SVG Tiny, then General, Architectural, and Functional requirements.

This document has been produced by the W3C SVG Working Group as part of the W3C Graphics Activity within the Interaction Domain.

We explicitly invite comments on this specification. Please send them to www-svg@w3.org: the public email list for issues related to vector graphics on the Web. This list is archived and acceptance of this archiving policy is requested automatically upon first post. To subscribe to this list send an email to www-svg-request@w3.org with the word subscribe in the subject line.

The latest information regarding patent disclosures related to this document is available on the Web. As of this publication, the SVG Working Group are not aware of any royalty-bearing patents they believe to be essential to SVG.

This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. The group does not expect this document to become a W3C Recommendation. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.


This document uses the following definitions:

1. Use Cases

USE 1.  SVGT 1.2 must support progressively downloadable long cartoon animations.


USE 2.  SVGT 1.2 must support controllable progressive rendering of large static content.


USE 3.  SVGT 1.2 must support scalable, interactive maps.


USE 4.  SVGT 1.2 must support scalable, animated icons.


USE 5.  SVGT 1.2 must support multimedia content.


USE 6.  SVGT 1.2 must support the ability to create visually compelling content.


USE 7.  SVGT 1.2 should allow specification of a thumbnail of an SVG document.


USE 8.  SVGT 1.2 must support game development.


USE 9.  SVGT 1.2 must support simple user interfaces.


2. General

GEN 1.  Two profiles are defined: SVG Tiny 1.2 ? Image,and SVG Tiny 1.2 ? Application. The profiles must notshould not contain optional parts (i.e. all features must be implemented by all vendors) in order to claim compliance with a profile.

Changed. The Working Group tried to avoid optional parts, but was not able to do this in all cases. SVG Tiny 1.2 has a small number of optional parts. On the other hand, because of the uDOM, the number of mobile-friendly profiles could be reduced from two (in SVG 1.1) to one (in SVG 1.2).

GEN 2.  SVGT 1.2 should clarify authoring guidelines for feature costs to content developers

Partly supported. The SVG Tiny 1.2 specification has a small amount of authoring guidance; a more comprehensive separate authoring guidelines document is planned.

GEN 3.  SVGT 1.2 must develop at least 80 detailed conformance tests.

(This criterion applies to the CR period, and is expected to be met during that time)

3. Architecture

ARCH 1.  SVGT 1.2 must support a minimal API to control SVG content/animations compatible with other user agents, for the SVG Tiny Application profile.

Supported by the SVG Micro DOM (uDOM).

ARCH 2.  SVGT 1.2 must support starting and stopping an audio clip.

Supported by the audio element.

ARCH 3.  SVGT 1.2 must support switching between different audio formats

Supported by the audio element.

4. Functional

4.1 Rendering

FUN 1.  SVGT 1.2 should provide ability to provide hints to guide quality vs. speed for rendering text, shapes, and images (use case 1,2,3).

Supported by the rendering hint attributes.

FUN 2.  SVGT 1.2 should support non-scaling objects (use case 3).

Supported by constrained transforms.

FUN 3.  SVGT 1.2 must support non-scaling stroke (use case 3).

Supported by the non-scaling-stroke value of the vector-effect attribute.

4.2 Document Structure

FUN 4.  SVGT 1.2 should support SVG content organized in pages (use case 1).

Unsupported. This functionality was explored and found to be unsuitable; pages (on the one hand) and timed scenes (on the other) are better represented using different constructs.

FUN 5.  SVGT 1.2 should support rendering level of detail (use case 3).

Supported by SVGGlobal.getURL, SVGGlobal.parseXML and the connection interface. More detail can be fetched over a network on demand.

FUN 6.  SVGT 1.2 should support keyboard navigation - the specification of the navigation in a scene using keys.

Supported by Section 13.12 - Navigation.

4.3 Opacity

FUN 7.  SVGT 1.2 must support fill opacity.

Supportedby the fill-opacity attribute.

FUN 8.  SVGT 1.2 must support stroke opacity.

Supported by the stroke-opacity attribute.

4.4 Gradients

FUN 9.  SVGT 1.2 must support subset of linear gradients (use case 1-5).

Supported by the linearGradient element.

FUN 10.  SVGT 1.2 should support subset of radial gradients. (use case 1-4).

Supported by the radialGradient element.

4.5 Text

FUN 11.  SVGT 1.2 should support minimal text layout

Supported by the textArea element.

FUN 17.  SVGT 1.2 should support tspan

Supported by the tspan element.

4.6 Animation

FUN 12.  SVGT 1.2 should allow specification of a certain point in time for static rendering of an animation (e.g. for thumbnails) (use case 7).

Supported by the snapshotTime attribute of the svg element.

FUN 13.  SVGT 1.2 should allow specification of a thumbnail of an SVG document (use case 7).

Supported by the snapshotTime attribute of the svg element. The size and format of the snapshot is not constrained by the SVG Tiny 1.2 specification.

FUN 14.  SVGT 1.2 should support raster sprite animation.

Supported by the Section 16 - Animation

4.7 Interactivity

FUN 15.  SVGT 1.2 must support interactivity (GEN.2).

Supported by Section 13 - Interactivity.

4.8 Scripting

FUN 16.  SVGT 1.2 Application must support scripting (DSM or DOM subset).

Supported by Section 15 - Scripting.

4.9 Coordinate Systems, Transformations and Units

 FUN 18.  SVGT 1.2 should support all align values for preserveAspectRatio attribute on image elements 

Supported by the preserveAspectRatio attribute.

Valid XHTML 1.0! Valid CSS!