previous contents properties index

# Appendix M: Change History

## Changes since the last public draft specification

- Global and miscellaneous changes
  - Changed all of the <title> elements so that the chapter names appear first, then "W3C SVG Specification".
  - Editorial work to synchronize with latest drafts of DOM2, along with general cleanup and consolidation of write-ups on events and editorial completion on pending changes to the animation chapter. A table has been added to the Interactivity chapter showing the complete list of events supported by SVG. The following functional changes have occurred with this draft spec:
    - Removal of keyboard events as these are not part of DOM2. A future version of DOM will define keyboard events.
    - The ondblclick event has been removed as it is not part of DOM2 and is redundant with the click event, which provides an indication of the number of clicks as part of its detail argument.
    - The onselect event has been removed.
    - Additional of event attributes onbegin, onend and onrepeat, which occur when an animation begins, ends or repeats.
  - DOM: Changed all DOM attributes which are of type SVGAnimated**** to readonly as these DOM attributes should never be overridden by assignment. The baseVal attribute on the SVGAnimated**** interfaces can be overridden by assignment, however.
- Changes to Basic Data Types and Interfaces
  - DOM: Because SVGColor is one of the CSS_CUSTOM extended interfaces, it has been changed to extend CSSValue. This also results in SVGPaint inheriting from CSSValue indirectly.
- Changes to Document Structure
  - In the description of URI referencing, added a note to authors that a URI has a restricted set of legal characters and that other characters must be escaped, and added a recommendation to implementers similar to the recommendation in the HTML specification that user agents should process URI attribute values to ensure that the tranmitted bytes are restricted to the byte values acceptable in URIs.
  - DOM: Fixed erroneous description of rootElement in SVGDocument. Now says that it points to the root 'svg' element in the document hierarchy.
  - DOM: Changed SVGSVGElement to extend the ViewCSS and DocumentCSS defined in DOM2 to provide script writers with access to the computed values for an element and to the override style sheet.
  - DOM: Removed createSVGPaint() and createSVGColor since these objects can never be directly assigned (via assignment) to any of the DOM attributes in the SVG DOM and because they derive from CSSValue, which cannot exist outside of a document tree.
  - DOM: Added createRGBColor() since the setPaint() method call needs this type of object.
- Changes to Coordinate Systems, Transformations and Units
  - Fix errors in the list of elements that establish new viewports. The 'use', 'marker' and 'pattern' elements do not establish new viewports, but a referenced 'symbol' will. An 'image' which references an SVG file will result in a new viewport because the referenced content will have an 'svg' element.
  - A change to the 29 June public draft specification was not listed in the change history in that version: the BNF for the 'transform' attribute was modified to reflect the ability to provide optional cx,cy values on a rotate specification.
  - DOM: A change to the 29 June public draft specification was not listed in the change history in that version: the setRotate() method call on the SVGTransform interface was modified to reflect the additional of new parameters cx and cy.
- Changes to Text
  - Many editorial cleanups and clarifications without changing the intended effect of various elements and attributes. These miscellaneous cleanups and clarifications often are related to internationalization issues and updates to the descriptions for baseline alignment properties that are being developed for both XSL and SVG.
  - Updated the overview sections and the detailed descriptions of the baseline properties to synchronize with the latest XSL drafts.
  - Renamed 'baseline-identifier' to 'alignment-baseline' to synchronize with changes to XSL.
  - Introduced the concepts of "absolute position adjustments" and "text chunks", and provided additional clarification of how absolute position adjustments affect ligatures, 'text-anchor', bidirectionality.
  - Modified terminology to be consistent with XSL. Instead of "text advance direction", we now use the term "inline progression direction". Instead of "reference point", we now use the term "alignment-point". Added discussions of "reference orientation" for additional consistency with XSL.
  - Clarified that character position offsets are based on the string that results after application of the white space handling rules in SVG.
  - Added a hyperlink to the XML 1.0 spec's discussion of end-of-line characters.
  - Fixed error in write-up about text on a path. Previously, the spec said that 'x' and 'y' attributes on 'tspan', etc. are ignored. Now the spec says that for horizontal text, 'x' provides a set of per-character absolute offset values, and 'y' is ignored, whereas for vertical text, 'y' provides a set of per-character absolute offset values, and 'x' is ignored.
  - Fixed error where 'dominant-baseline' was only allowed on 'text' elements. Now it can now be applied to any text element, not just 'text'.
  - DOM: Added clarifications for how getComputedTextLength() and getSubStringLength() so that the description matches the write-ups in the language definition for computing text advance distances.
  - DOM: Expressed more precisely how getStartPositionOfChar() and getEndPositionOfChar() work, and made the description less ambiguous.
- Changes to Painting: Filling, Stroking and Marker Symbols
  - Increased detail in the description of how exactly markers are rendered. No longer is a temporary viewport created.
- Changes to Filter Effects
  - DOM: Fixed error in definition of setStdDeviation() method in SVGFEGaussianBlurElement. Previously, the method took SVGLength parameters. Now, it takes 'float' values to match the <number> type for attribute 'stdDeviation'.
- Changes to Interactivity
  - Renamed zoom, load, unload, error, abort, resize, scroll to SVGZoom, SVGLoad, SVGUnload, SVGError, SVGAbort, SVGResize, SVGScroll per DOM2 feedback comments.
- Changes to Scripting
  - Renamed zoom, load, unload, error, abort, resize, scroll to SVGZoom, SVGLoad, SVGUnload, SVGError, SVGAbort, SVGResize, SVGScroll per DOM2 feedback comments. Added interface SVGEvent to be the target interface for SVGLoad, SVGUnload, SVGError, SVGAbort, SVGResize and SVGScroll.
- Changes to Animation
  - Added keyPoints to DTD for 'animateMotion'. This had been documented, but an editorial error left it out of the DTD.
  - Added attributes 'min' and 'max' attributes, updated definitions of 'begin' and 'end' attributes (primarily, just additional optional white space), added a 'media' keyword to 'dur' attribute, and changed event names from 'begin', 'end' and 'repeat' to 'beginEvent', 'endEvent' and 'repeatEvent' to synchronize with latest developments in the SMIL Boston timing model draft.
  - DOM: Added EventTarget to base interface SVGAnimationElement, which is required to allow access to the begin, end and repeat events.
  - DOM: Fixed error where SVGAnimateColorElement had been missing from DOM.
- Changes to Fonts
  - Added a 'd' attribute to 'glyph' to allow an option for compact fonts that are styled just like system fonts without the potential coordinate system problems with arbitrary SVG in fonts.
- Changes to Metadata
  - Replaced "openinterchange.org" with "example.org" to reinforce that the example is hypothetical.
- Changes to Extensibility
  - Added a new section that describes the extension entities in the SVG DTD.
- Changes to SVG DTD
  - Changed the URL for the SVG namespace to "http://www.w3.org/2000/svg" to match W3C conventions and due to imminent Candidate Recommendation status.
  - Changed the URL for the XLink namespace from the incorrect URL "http://www.w3.org/2000/xlink/namespace/" to "http://www.w3.org/1999/xlink".
  - Added attribute 'arcrole' to XLink entities.
  - Extended the list of possible values for 'show' and 'actuate' in XLink to match the list of values in the latest XLink spec.
  - Fixed typo in DTD where altGlyphItem was spelled incorrectly.
- Changes to SVG DOM
  - DOM: Changed the names of events focusin, focusout and activate to DOMFocusIn, DOMFocusOut and DOMActivate, respectively, to match the latest draft of DOM2.
  - DOM: Changed the range module from DOM2 from required to optional for SVG.
  - DOM: Changed the initial feature number for calls to hasFeature from "1" to "1.0" for compatibility with DOM2.
- Changes to IDL
  - The new IDL reflects any DOM changes with this draft spec.
- Changes to Java language DOM binding
  - The new Java language binding reflect any DOM changes with this draft spec.
- Changes to ECMAScript language DOM binding
  - The new ECMAScript language binding reflect any DOM changes with this draft spec.
- Changes to Internationalization Support
  - Various terminology editorial cleanups per feedback from the Internationalization working group.
- Changes to Implementation Requirements
  - Clarified and simplified the section on text selection implementation notes. Added language to address situations where the character-to-glyph mapping is more complex than one-to-one.
- Changes to Conformance Criteria
  - Added a clarification about when SVG user agent is included in a user agent that supports also supports other languages, such as XHTML and/or CSS/XSL. The clarification is that MIME type "image/svg-xml" must be supported wherever raster image formats are supported.
- Changes to References
  - Added a reference for ISO8601, representation of dates and times.

previous contents properties index