Appendix B: Change History
Changes with 12-April-1999 SVG Specification
- Included a DTD in Appendix C.
- There is now an <svg> element which is the root for all stand-alone SVG documents
and for any SVG fragments that are embedded inline within a parent XML grammar.
(See SVG Document Structure>.)
- Added initial descriptions of how text-on-a-path and SVG-along-a-path
(See Text on a Path.)
- Added <symbol> and
<marker> elements to provide
packaging for the following:
Also added a new optional <data> subelement to the <path>
element to provide the necessary hook to provide for custom arrowheads.
- Necessary additional attributes on template objects
- A clean way of defining standard drawing symbol libraries
- The definition of a graphic to use as a custom glyph within a <text>
element (e.g., generalize "text-on-a-path" to "SVG-on-a-path")
- Necessary additional attributes for pattern definitions (for pattern fill)
- Definition of a sprite for an animation
- Marker symbols
- Many changes to Coordinate Systems, Transformations and Units
to make the section more complete and more readable. The specific changes
to this chapter include:
- Relatively minor changes in terminology to better match the terminology
used in the CSS2 specification. For example, the definitions of the terms canvas
and viewport were modified to be as close as possible to the corresponding
definitions in the CSS2 specification.
- The initial coordinate system is now based on the parent document's
notion of pixels rather than points.
- When embedded inline within a parent XML grammar, the outermost <svg> element
in an SVG document acts like a block-level formatting
object in the CSS layout model and thus supports CSS positioning properties such as
'left' and 'width' and the CSS properties
'clip' and 'overflow'.
- Nested <svg> elements are the mechanism for recursively including
nested SVG drawings, but also provide the one and only means of establishing
a new viewport and thus changing the meaning of the various CSS unit
specifiers such as px, pt, cm and % (percentages). Nested <svg> elements
support the same CSS positioning properties as an outermost <svg> element,
- Removed <pieslice>, which was considered to be of lesser
general utility than the other predefined vector graphic shapes, and
added <line>, which allows a one-segment line to be drawn.
See Other Vector Graphic Shapes.
- Replaced the <althtml> element with a description for
how to use the <switch> (or equivalent) elements in
XML grammars or the <object> element in HTML 4.0
as the recommended way to provide for alternate
representations in the event the user agent cannot process an SVG drawing.
(See Backwards Compatibility.)
- Removed the comment in the discussion under <description> and
<title> which said that the given text string could be specified
as an attribute. The text string now can only be supplied as character data.
(See The <description> and <title> elements.
- Changed the wording about text strings to say that the current point
is advanced by the metrics of the glyph(s) used rather than the character used.
(See text positioning.)
- Added some details to the description of the <textflow> element to indicate that
<text> elements can be directly embedded within <textflow>
and that the current text position is remembered within a <textflow>
from one <text> element to the next <text> element.
(See Text Flows.)
- Added a new property
to provide a hint to the user agent about whether or not text should
be antialiased. The lack of such a property was an inadvertant
omission from previous versions of the spec and was called for in the
SVG Requirements document.
- Removed the 'matrix' property from linear gradients because it
was unnecessary (overspecification) and the
'spread-method' property from radial gradients because
it was difficult to specify and implement, it didn't match
current common usage and is of little apparent utility.
- Included a new section 2.1 with a brief discussion about the "image/svg"
MIME type. Subsequent sections in chapter 2 have been renumbered
(See SVG MIME Type.)
- Added another bullet to the Accessibility section to indicate
that SVG's zooming feature aids those with partial visual impairment.
- Elaborated to a small level on how
Embedded Foreign Object Types might work to reflect
progess within the working group on the issue.
- Changed altglyph from a subelement to <text> to a CSS property
in response to discussion on the W3C Character Model.
See Alternate Glyphs.
- In the discussion about the <use> element,
made clear that template objects could come from either the same document
or an external document.
- Minor changes to description under
Event Handling to indicate
that any element can have an onload or onunload event handler to provide
additional control via scripting as parts of the drawing download progressively.
Changes with 05Feb1999 SVG Specification
This was the first public working draft.