SVG Tiny 1.2 - 20060721

T Change History


This appendix is informative.

Listed in this section are all the changes have been made to this Candidate Recommendation relative to the previous public Working Draft of SVG Tiny 1.2. Cosmetic changes (i.e. correction of typos, changes related to the styling of the document and addition of links) need not be listed.

T.1 Changes over the whole document

All examples of SVG 1.2 now use "xml:id" rather than "id".

References to SMIL 2.0 Second Edition updated to SMIL 2.1

Made Namespaces in XML 1.0 allowed everywhere to avoid version 1.1 requiring XML 1.1 for all documents.

Removed all modules from the spec.

Changed all mentions of "XML character data" to "XML content".

T.1 1 Introduction

'Animation Elements' definition is added to the list of definitions.

'SVG User Agent' definition is added to the list of definitions.

'font', 'linearGradient' and 'radialGradient' elements are added to the rendering tree definition as elements not part of the rendering tree.

Namespace policy documented per [NSState].

The following sentence added to 1.3: "Backwards compatible means that conformant SVG Tiny 1.1 content will render the same in conformant SVG Tiny 1.2 User Agents as it did in conformant SVG Tiny 1.1 User Agents."

Added section, How to Reference This Specification

'Document time' definition is added to the list of definitions.

Clarified in definition of SVG Document Fragment that nested 'svg' elements are unsupported elements.

Added a normative definition for bounding box, linked to relevant parts of the spec, clarified behavior of bounding box in terms of return values for elements not found, and with regard to animation.

Loosened restriction against returning a bounding box for non-rendered elements.

Added a normative definition for decorated bounding box.

Added a definition for "text content block element" to allow for consistency and extensibility.

T.1 2 Concepts

T.1 3 Rendering Model

T.1 4 Basic Data Types and Color Keywords

'CSS units' renamed to 'optional units' as XSL uses them as well. Link to QName definition added.

T.1 5 Document Structure

In The Svg Element definition, added zoomAndPan attribute and clarified that, together with width and height, it establishes the intrinsic size of the element.

The exception thrown when modifying the 'version' and 'baseProfile' attributes via the DOM has been removed. Changing those attributes does not cause any behavioral change in implementation.

Small clarification to prefetch element to clarify that the metadata returned by the server is not overridden, merely examined to detect hint staleness. Interplay of 'mediaTime' and 'mediaSize' explained better.

Fixed typo in definition of class attribute. Now <list-of-names>.

Viewport scaling paragraph in 5.1.2 changed to: "Normally, SVG content is designed to be scalable. In order for the SVG content to scale automatically to fill the available viewport, it must include a 'viewBox' attribute on the 'svg' element. This describes the region of world coordinate space (the initial user coordinate system) used by the graphic. This attribute thus provides a convenient way to design SVG documents to scale-to-fit into an arbitrary viewport."

To 5.1.2 added: "Note: 'animateMotion' and 'animateTransform' are legal as children to 'svg' but don't apply to 'svg' parents (since the 'svg' element doesn't have a 'transform' attribute). They only have any effect if the xlink:href attribute is attached to them so they point to other elements."

Slight clarification in the switch definition, "bypassed" was removed.

Minor rewording of the snapshotTime example images.

Clarified section 5.9.2 on when elements become resolved.

Simplified requiredFormats to take a space-separated list of Internet Media types

Updated the description of the true value for 'externalResourcesRequired' to correctly state the target of the load event.

T.1 6 Styling

Added link to definition of "computed value" ( to 6.7

Clarified that shorthand properties are not expressed as presentation attributes.

T.1 7 Coordinate Systems, Transformations and Units

In The TransformRef value, added EBNF.

In The transform attribute, added 'none' value.

In Units, removed the terms "absolute" and "CSS" when referring to unit identifiers.

In Intrinsic Sizing Properties of the Viewport of SVG content, removed the term "absolute" when referring to unit identifiers.

In The transform attribute, added 'none' value.

In The transform attribute, moved parts of bounding box discussion into a normative definition in intro.html, added link.

In The viewBox attribute, added EBNF to define syntax.

Updated the link to 'Recommended XML/GML 3.1.1 encoding of common CRS definitions'

Removed unused wording about unit identifiers, which did not apply to Tiny.

T.1 8 Paths

T.1 9 Basic Shapes

Changed description of stroking operation of the rect element (now we start with an elliptical arc and closepath)

T.1 10 Text

Now preserve tbreak elements when editing text content. tspan elements are still stripped.

Multiple consecutive tbreak elements now cause multiple line-breaks.

Definition of 'auto' value for line-spacing harmonised with 'normal' value for XSL 'line-height'.

10.13: "For systems which have system clipboards, the SVG user agent is required to provide a user interface for initiating a copy of the currently selected text to the system clipboard." is changed to: "For systems which have system clipboards, the SVG user agent should provide a user interface for initiating a copy of the currently selected text to the system clipboard."

editable attribute is now consistently listed as animatable.

Added explanation and example for using pointer-events="boundingBox" with textArea to allow empty text inputs to activate via a pointer.

Removed comment about how the specification doesn't say how computed values for 'font-weight' are represented.

Changed references for font properties from CSS2 to XSL11 (ACTION-1005)

Added references to "text content element" or "text content block element" where appropriate.

T.1 11 Painting: Filling, Stroking, Colors and Paint Servers

In Specifying paint it has been clarified that <IRI> actually is: url(<IRI>).

In Specifying paint, it has been clarified that invalid IRIs must be treated as 'none'.

In Fill Properties changed the computed value from 'Specified value, except inherit' to '"none", system paint, normalized <color> value or absolute IRI'

In Stroke Properties changed the computed value from 'Specified value, except inherit' to '"none", system paint, normalized <color> value or absolute IRI'

In 'viewport-fill' property changed the computed value from 'Specified value, except inherit' to 'normalized <color> value, except inherit'

In Solid Color Element changed the computed value from 'Specified value, except inherit' to 'normalized <color> value, except inherit'

In The SVG 'color' property changed the computed value from 'Specified value, except inherit' to 'normalized <color> value, except inherit'

In 'stop-color' property changed the computed value from 'Specified value, except inherit' to 'normalized <color> value, except inherit'

Added 'The text-align' property as it had been accidently left of out of the previous working draft.

Added value of "none" to 'viewport-fill' property.

System paint clarified as a paint server, not a subtype of color.

Changed specific links to "bounding box" to point to the new bbox definition

Changed 'normalized' to 'specified' <color /> value for 'Computed Values'

Added references to decorated bounding box for selected attributes (stroke, stroke-width, stroke-linecap, stroke-miterlimit, and stroke-linejoin).

Added restriction on color keywords, such that they must be lowercase, for consistency.

Added additional wording at stroke-dasharray and stroke-dashoffset to cover linecaps on dashing, informative note on unspecified behavior and restarting dash-offset from scratch for subpaths

Added references to "text content element" or "text content block element" where appropriate.

T.1 12 Multimedia

The media type in the audio example is changed to "application/ogg".

The computed value of audio-level is corrected,and volumes can increase as well as decrease.

Added section Audio mixing for 'audio' and 'video' elements that explains how mixing of the audio for multiple audio and/or video elements is done. This was previously identically explained in both the audio and the video elements.

Made it clear that audio and video must reference the appropriate types.

In The 'video' element it has been clarified that the width and height attributes have no effect on the rendering if the transform behaviour is pinned. Also updated list of transformBehaviour values in attribute definition to be consistent with rest of section.

In The audio-level property, the type has been changed from <float> to <number>.

T.1 13 Interactivity

In Specifying navigation all the nav-* attributes used to have the IRI attribute value specified as url(<Local IRI>). This is changed to nav-* = url(<IRI>). And the following sentence is added to all nav-* attributes: "The specified element must be within the Current SVG Document Fragment."

In Navigation Behaviour we add that there should be a mechanism for escaping from a focus ring to the user agent.

In Complete list of supported events, a note stating that the load event does not bubble was added to the list and the paragraph at the end of the list that intended to say the same thing was removed.

In Complete list of supported events, the load event description was updated to better explain when the load event triggers.

In Complete list of supported events, the wheel event was changed to mousewheel, changed from an UIEvent to a MouseEvent, and put it in the SVG namespace.

References to DOM2 were replaced with references to DOM3

In Complete list of supported events, the column "Bubbling phase" was added to the table of events.

In Complete list of supported events, specified that the target of the SVGtimer event is the timer object itself, and that the event processing is limited to the target phase.

In the definition for focusable attribute the definition of the 'auto' value was updated to reflect the changes in the values of the editable attribute, where the previous value 'true' is now 'simple'.

In Complete list of supported events, a rotate event has been added.

In User interface events, the statement regarding the DOM 3 event capture model was clarified to say that SVG users agents are not required to support this model.

Removed 'animation' from list of elements that create shadow content.

Added "boundingBox" as a value for the "pointer-events" property.

Removed reference to "a UA that only supports SVG-t 1.2 but not SVG-t 1.1".

In "Complete list of supported events", under the "Animation event name" column, changed "repeat" back to "repeatEvent" (the original value from SMIL and SVG 1.1)

Removed numerical argument in the DOMActivate event.

Specified default Eventbase-element for SVG Media Elements as being the element itself.

Added references to "text content element" or "text content block element" where appropriate.

T.1 14 Linking

The erroneous reference to XML Names in fragment identifiers was corrected to NCNames, per XPointer framework. The TransformParams token was corrected to TransformList.

Clarified svgView in fragment identifiers

Specifying traditional linking behavior as regard bare name fragment identifiers, such that the target element is brought into view, using decorated bounding box.

T.1 15 Scripting

The Script Element definition text was updated to indicate that a script executes when it is loaded, and that inserting a script into the DOM tree will cause it to execute.

In The Listener Element the reference to removeEventLister was removed from the 2nd paragraph, and the note on the observer attribute from the same paragraph was moved to the attribute definition section.


      Function(evt) {

    //contents of handler



      function(evt) {

    //contents of handler


Added "event" as the parameter passed to inline handlers in section 15.5 (as an alias to 'evt').

Specified behavior for when there is both an xlink:href and child content in a script element.

Updated The Handler Element, correcting the statement about script execution semantics.

T.1 16 Animation

In Relationship to SMIL 2.1 Animation the discard element has been removed from the list. 'discard' is not an animation element.

In Attributes that control whether animations are additive px units from the small examples are removed since it is not legal in tiny.

Clarified that for attributeType="auto", all known CSS properties are searched, not just those defined by SVG.

In the second bullet list in 16.2.16 "skew" is replaced by "skewX" and "skewY"

In The 'set' element, clarified that not all attribute types are supported by set. Changed 'all attribute types' to read 'most attribute types'.

Added explanation that 'animate' operates identically to 'animateColor' when animating colors.

Specified that animateMotion and animateTransform may be applied to any element which allows a transform attribute. Removed list of elements for animateMotion, and replaced with reference to list of elements that allow transform attribute.

Clarified in the overview that the timing engine is orthogonal to the rendering tree.

Changed the write-up about the 'type' attribute on svg:script to say that UAs *must* support "text/ecmascript" instead of "should".

Corrected the definitions of observer and target to be IDREF.

Clarified what happens when the 'begin' attribute is not specified.

Clarified that all animations that are additive are also cumulative

Added reference to definition of bounding box.

Specified capture phase for accessKey, and corrected typo, as per SVGT12-504/Action-1100 [rev 1.65].

Updated the example Animation using the SVG DOM and the explanitory text to account for changes in the naming of the Timer attributes and the createTimer method.

Added informative section on Eventbase-element.

T.1 17 Fonts

The unused 'font-face-name' element was removed.

Added references to "text content element" or "text content block element" where appropriate.

T.1 18 Metadata

T.1 19 Extensibility

T.1 Appendix A The SVG Micro DOM (uDOM)

Reworded sections to remove usage of 'he' and 'she'.

References DOM3 and SVG1.1 DOM instead of copying.

In Attribute/Property Normalization, removed Relative to absolute IRI conversion bullet.

In Attribute/Property Normalization, changed description of whitespace normalization to make it clear that it is optional.

In SVGGlobal, clarified references to contextDoc paramater in parseXML description.

In Event, removed confusing and redundant definitions of SVGElementInstance and Nodes.

In Additional Rules, clarified the possible return values of getRGBColorTrait.

In WheelEvent, changed to be a MouseEvent.

Made introduction informative and added other section with normative wording.

Removed wording of "text nodes" and replaced it with "text content" instead.

Added "The base IRI for gotoLocation is the same as the location of the document." to the gotoLocation description.

Changed "presentation time" to "document time" in three places and removed the definition of presentation time since document time is now defined in the definitions section.

Changed "ASCII code" to "Unicode value" in SVGPath.

Modified progress event example to take into account lengthComputable attribute.

Changed currentTime to get/setCurrentTime

Lack of a capture phase never raises an exception.

Added security considerations to Connection.

New errors, and security considerations on send()

getCurrentFocusedObject now returns an EventTarget, and is no longer forbidden from returning null.

In SVGMatrix, changed description of mTranslate, mRotate, and mScale to refer to the mMultiply method.

removed hasFeature

T.1 Appendix B IDL Definitions

T.1 Appendix C Implementation Requirements

1st bullet of C.2 is changed to "Within an SVG document fragment , any subtree that is rooted by an unknown element (including those in the SVG or XML Events namespaces) or a known element that occurs in unexpected location, is not rendered. The nodes in the subtree are not processed beyond including the relevant DOM objects in the document tree. Those DOM objects will still implement the DOM interfaces appropriate for the element type, however."

1st and 2nd bullets of C.3 are changed to:

Renamed SVGAnimationElement interface to SVGTimedElement interface and moved the ElementTimeControl pauseElement(), resumeElement() and isPaused APIs to SVGTimedElement.

Removed OriginalEvent interface

Changed selection requirements to better reflect WAI requirements.

Modified Implementation Requirements for UAs to explicitly allow notifications of unsupported content.

Added references to "text content element" or "text content block element" where appropriate.

T.1 Appendix D Conformance Criteria

D.3.1 is changed to: Is well-formed according to the version of XML used (either the XML 1.0 [XML10] or XML 1.1 [XML11]) and conforms to the corresponding Namespaces in XML specification (Namespaces in XML 1.0 [XML-NS10] or Namespaces in XML 1.1 [XML-NS11]).

D.3.3 is changed to: SVG document fragments can be included within parent XML documents using the XML namespace facilities described in the Namespaces in XML 1.0 specification [XML-NS10] or the Namespaces in XML 1.1 specification [XML-NS11] (depending on the version of XML used).

Reference to "properties shared with CSS and XSL" in D.5.2 removed.

Conformance to Charmod part 1: Fundamentals is now explicitly required for conforming content and implementations.

Requirement to support SVG where raster images are supported removed.

Added two sections: "Extension Conformance Requirements" and "Non-XML Encoding Conformance Requirements".

Clarified the distinction of transfer-encoding and content-encoding as per SVGT12-8 SVG12: gzip transfer encoding

T.1 Appendix E Conformance to QA Framework Specification Guidelines

Now lists deprecated features: SVGLoad, SVGResize, SVGScroll, SVGZoom, and "text/ecmascript".

T.1 Appendix F Accessibility Support

Added references to "text content element" or "text content block element" where appropriate.

T.1 Appendix G Internationalization Support

T.1 Appendix H JPEG Support

T.1 Appendix I Minimizing SVG File Sizes

T.1 Appendix J Feature strings

Removed links to modules and added elements and attributes directly to the feature string table instead.

Added feature strings for text flow and media attributes

Removed feature string

Added feature string

Added missing properties font-variant and stop-opacity to existing feature strings.

Removed hasFeature

T.1 Appendix K Element Table

T.1 Appendix L Attribute and Property Tables

T.1 Appendix M Media Type registration for image/svg+xml

T.1 Appendix N RelaxNG Schema for SVG Tiny 1.2

T.1 Appendix O References

TAG Finding on namespace policy [NSState] added to informative references.

References to SMIL 2.0 Second Edition updated to SMIL 2.1

Moved reference to XSL from informative to normative.

Unicode reference updated from 4.0.0 to 4.1.0

XLink updated to XLink 1.1