--- a/master/conform.html Thu May 17 16:03:54 2012 +1000
+++ b/master/conform.html Thu May 17 16:09:19 2012 +1000
@@ -122,50 +122,52 @@
<h2 id="ConformingSVGGenerators">Conforming SVG Generators</h2>
- <p>A <em>Conforming SVG Generator</em> is a program which:</p>
- <ul>
- <li>always creates <a
- href="#ConformingSVGDocuments">Conforming SVG Document
- Fragments</a> and/or <a
- href="#ConformingSVGStandAloneFiles">Conforming SVG
- Stand-Alone Files</a>.</li>
- <li>does not create non-conforming SVG document fragments of
- the above types.</li>
- </ul>
- <p>Additionally, an authoring tool which is a Conforming SVG
- Generator conforms to all of the Priority 1 accessibility
- guidelines from the document <a href="http://www.w3.org/TR/2000/REC-ATAG10-20000203/"><cite>Authoring Tool Accessibility
- Guidelines 1.0</cite></a> [<a href="refs.html#ref-ATAG">ATAG</a>] that are relevant
- to generators of SVG content. (Priorities 2 and 3 are
- encouraged but not required for conformance.)</p>
- <p>SVG generators are encouraged to follow <a
- href="http://www.w3.org/International/">W3C developments in the
- area of internationalization</a>. Of particular interest is the
- <em>W3C Character Model</em> and the concept of <em>Webwide
- Early Uniform Normalization</em>, which promises to enhance the
- interchangability of Unicode character data across users and
- applications. Future versions of the SVG specification are
- likely to require support of the <em>W3C Character Model</em>
- in Conforming SVG Generators.</p>
+<p>A <em>Conforming SVG Generator</em> is a program which:</p>
+
+<ul>
+ <li>always creates <a href="#ConformingSVGDocuments">Conforming SVG Document Fragments</a>
+ and/or <a href="#ConformingSVGStandAloneFiles">Conforming SVG Stand-Alone Files</a>.</li>
+
+ <li>does not create non-conforming SVG document fragments of the above types.</li>
+</ul>
+
+<p>Additionally, an authoring tool which is a Conforming SVG
+Generator conforms to all of the Priority 1 accessibility
+guidelines from the document <a href="http://www.w3.org/TR/2000/REC-ATAG10-20000203/"><cite>Authoring Tool Accessibility
+Guidelines 1.0</cite></a> [<a href="refs.html#ref-ATAG">ATAG</a>] that are relevant
+to generators of SVG content. (Priorities 2 and 3 are
+encouraged but not required for conformance.)</p>
+
+<p>SVG generators are encouraged to follow <a
+href="http://www.w3.org/International/">W3C developments in the
+area of internationalization</a>. Of particular interest is the
+<em>W3C Character Model</em> and the concept of <em>Webwide
+Early Uniform Normalization</em>, which promises to enhance the
+interchangability of Unicode character data across users and
+applications. Future versions of the SVG specification are
+likely to require support of the <em>W3C Character Model</em>
+in Conforming SVG Generators.</p>
- <h2 id="ConformingSVGServers">Conforming SVG Servers</h2>
- <p>
- Conforming SVG Servers must meet all the requirements of a Conforming SVG Generator. In addition, Conforming SVG Servers using
- HTTP or other protocols that use Internet Media types must serve SVG stand-alone files with the media type <code>"image/svg+xml"</code>.
- </p>
- <p>
- Also, if the SVG file is compressed with gzip or deflate, Conforming SVG Servers must indicate this with the appropriate header, according
- to what the protocol supports. Specifically, for content compressed by the server immediately prior to transfer, the server must use the
- "Transfer-Encoding: gzip" or "Transfer-Encoding: deflate" headers as appropriate, and for content stored in a compressed
- format on the server (e.g. with the file extension "svgz"), the server must use the "Content-Encoding: gzip" or
- "Content-Encoding: deflate" headers as appropriate.
- </p>
+<h2 id="ConformingSVGServers">Conforming SVG Servers</h2>
+<p>Conforming SVG Servers must meet all the requirements of a Conforming SVG
+Generator. In addition, Conforming SVG Servers using HTTP or other protocols
+that use Internet Media types must serve SVG stand-alone files with the media
+type <code>"image/svg+xml"</code>.</p>
- <p><em>Note:</em> Compression of stored <em>content</em> (the "entity," in HTTP terms) is distinct from automatic compression of the
- <em>message body</em>, as defined in HTTP/1.1
- <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.39">TE</a>/
- <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.41">Transfer Encoding</a>
- ([<a href="refs.html#ref-RFC2616">RFC2616</a>], sections 14.39 and 14.41).</p>
+<p>Also, if the SVG file is compressed with gzip or deflate, Conforming SVG
+Servers must indicate this with the appropriate header, according to what the
+protocol supports. Specifically, for content compressed by the server
+immediately prior to transfer, the server must use the "Transfer-Encoding: gzip"
+or "Transfer-Encoding: deflate" headers as appropriate, and for content
+stored in a compressed format on the server (e.g. with the file extension "svgz"),
+the server must use the "Content-Encoding: gzip" or
+"Content-Encoding: deflate" headers as appropriate.</p>
+
+<p><em>Note:</em> Compression of stored <em>content</em> (the "entity," in HTTP
+terms) is distinct from automatic compression of the <em>message body</em>, as
+defined in HTTP/1.1 <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.39">TE</a>/
+<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.41">Transfer Encoding</a>
+([<a href="refs.html#ref-RFC2616">RFC2616</a>], sections 14.39 and 14.41).</p>
<h2 id="ConformingSVGDOMSubtree">Conforming SVG DOM Subtree</h2>
@@ -177,247 +179,279 @@
<h2 id="ConformingSVGInterpreters">Conforming SVG Interpreters</h2>
- <p>An SVG interpreter is a program which can parse and process
- SVG document fragments. Examples of SVG interpreters are
- server-side transcoding tools (e.g., a tool which converts SVG
- content into modified SVG content) or analysis tools (e.g., a
- tool which extracts the text content from SVG content). An <a
- href="conform.html#ConformingSVGViewers">SVG viewer</a> also
- satisfies the requirements of an SVG interpreter in that it can
- parse and process SVG document fragments, where processing
- consists of rendering the SVG content to the target medium.</p>
- <p>In a <em>Conforming SVG Interpreter</em>, the XML parser
- must be able to parse and process all XML constructs defined
- within <a href="http://www.w3.org/TR/2008/REC-xml-20081126/">XML 1.0</a>
- [<a href="refs.html#ref-XML10">XML10</a>] and
- <a href="http://www.w3.org/TR/2006/REC-xml-names-20060816/"><cite>Namespaces in XML</cite></a>
- [<a href="refs.html#ref-XML-NS">XML-NS</a>].</p>
- <p>There are two sub-categories of <em>Conforming SVG
- Interpreters</em>:</p>
- <ul>
- <li><em>Conforming Static SVG Interpreters</em> must be able
- to parse and process the static language features of SVG that
- correspond to the feature string "http://www.w3.org/TR/SVG11/feature#SVG-static" (see <a
- href="svgdom.html#FeatureStrings">Feature strings</a>).</li>
- <li>In addition to the requirements for the static category,
- <em>Conforming Dynamic SVG Interpreters</em> must be able to
- parse and process the language features of SVG that
- correspond to the feature string "http://www.w3.org/TR/SVG11/feature#SVG-dynamic" (see
- <a href="svgdom.html#FeatureStrings">Feature strings</a>) and
- which support all of the required features in the <a
- href="svgdom.html">SVG DOM</a> described in this
- specification.</li>
- </ul>
- <p>A Conforming SVG Interpreter must parse any SVG document
- correctly. It is not required to interpret the semantics of all
- features correctly.</p>
- <p>Note: A transcoder from SVG into another graphics
- representation, such as an SVG-to-raster transcoder, represents
- a viewer, and thus viewer conformance criteria apply. (See <a
- href="conform.html#ConformingSVGViewers">Conforming SVG
- Viewers</a>.)</p>
+<p>An SVG interpreter is a program which can parse and process
+SVG document fragments. Examples of SVG interpreters are
+server-side transcoding tools (e.g., a tool which converts SVG
+content into modified SVG content) or analysis tools (e.g., a
+tool which extracts the text content from SVG content). An
+<a href="conform.html#ConformingSVGViewers">SVG viewer</a> also
+satisfies the requirements of an SVG interpreter in that it can
+parse and process SVG document fragments, where processing
+consists of rendering the SVG content to the target medium.</p>
+
+<p>In a <em>Conforming SVG Interpreter</em>, the XML parser
+must be able to parse and process all XML constructs defined
+within <a href="http://www.w3.org/TR/2008/REC-xml-20081126/">XML 1.0</a>
+[<a href="refs.html#ref-XML10">XML10</a>] and
+<a href="http://www.w3.org/TR/2006/REC-xml-names-20060816/"><cite>Namespaces in XML</cite></a>
+[<a href="refs.html#ref-XML-NS">XML-NS</a>].</p>
+
+<p>There are two sub-categories of <em>Conforming SVG Interpreters</em>:</p>
+
+<ul>
+ <li><em>Conforming Static SVG Interpreters</em> must be able
+ to parse and process the static language features of SVG that
+ correspond to the feature string "http://www.w3.org/TR/SVG11/feature#SVG-static" (see
+ <a href="svgdom.html#FeatureStrings">Feature strings</a>).</li>
+
+ <li>In addition to the requirements for the static category,
+ <em>Conforming Dynamic SVG Interpreters</em> must be able to
+ parse and process the language features of SVG that
+ correspond to the feature string "http://www.w3.org/TR/SVG11/feature#SVG-dynamic"
+ (see <a href="svgdom.html#FeatureStrings">Feature strings</a>) and
+ which support all of the required features in the
+ <a href="svgdom.html">SVG DOM</a> described in this specification.</li>
+</ul>
+
+<p>A Conforming SVG Interpreter must parse any SVG document
+correctly. It is not required to interpret the semantics of all
+features correctly.</p>
+
+<p>Note: A transcoder from SVG into another graphics
+representation, such as an SVG-to-raster transcoder, represents
+a viewer, and thus viewer conformance criteria apply. (See
+<a href="conform.html#ConformingSVGViewers">Conforming SVG Viewers</a>.)</p>
<h2 id="ConformingSVGViewers">Conforming SVG Viewers</h2>
- <p>An SVG viewer is a program which can parse and process an
- SVG document fragment and render the contents of the document
- onto some sort of output medium such as a display or printer;
- thus, an <em>SVG Viewer</em> is also an <em>SVG
- Interpreter</em>.</p>
- <p>There are two sub-categories of <em>Conforming SVG
- Viewers</em>:</p>
- <ul>
- <li id="ConformingStaticSVGViewers"><em>Conforming Static SVG Viewers</em> support the static
- language features of SVG that correspond to the feature
- string "http://www.w3.org/TR/SVG11/feature#SVG-static" (see <a
- href="svgdom.html#FeatureStrings">Feature strings</a>). This
- category often corresponds to platforms and environments
- which only render static documents, such as printers.</li>
- <li id="ConformingDynamicSVGViewers"><em>Conforming Dynamic SVG Viewers</em> support the
- language features of SVG that correspond to the feature
- string "http://www.w3.org/TR/SVG11/feature#SVG-dynamic" (see <a
- href="svgdom.html#FeatureStrings">Feature strings</a>). This
- category often applies to platforms and environments such as
- common Web browsers which support user interaction and
- dynamic document content (i.e., documents whose content can
- change over time). (User interaction includes support for
- hyperlinking, events [e.g., mouse clicks], text selection,
- zooming and panning [see <a
- href="interact.html">Interactivity</a>]. Dynamic document
- content can be achieved via <a
- href="animate.html">declarative animation</a> or by scripts
- modifying the <a href="svgdom.html">SVG DOM</a>.)</li>
- </ul>
- <p>Specific criteria that apply to both <em>Conforming Static
- SVG Viewers</em> and <em>Conforming Dynamic SVG
- Viewers</em>:</p>
+<p>An SVG viewer is a program which can parse and process an
+SVG document fragment and render the contents of the document
+onto some sort of output medium such as a display or printer;
+thus, an <em>SVG Viewer</em> is also an <em>SVG Interpreter</em>.</p>
+
+<p>There are two sub-categories of <em>Conforming SVG Viewers</em>:</p>
+
+<ul>
+ <li id="ConformingStaticSVGViewers"><em>Conforming Static SVG Viewers</em>
+ support the static language features of SVG that correspond to the feature
+ string "http://www.w3.org/TR/SVG11/feature#SVG-static" (see
+ <a href="svgdom.html#FeatureStrings">Feature strings</a>). This
+ category often corresponds to platforms and environments
+ which only render static documents, such as printers.</li>
+
+ <li id="ConformingDynamicSVGViewers"><em>Conforming Dynamic SVG Viewers</em>
+ support the language features of SVG that correspond to the feature
+ string "http://www.w3.org/TR/SVG11/feature#SVG-dynamic" (see
+ <a href="svgdom.html#FeatureStrings">Feature strings</a>). This
+ category often applies to platforms and environments such as
+ common Web browsers which support user interaction and
+ dynamic document content (i.e., documents whose content can
+ change over time). (User interaction includes support for
+ hyperlinking, events [e.g., mouse clicks], text selection,
+ zooming and panning [see <a href="interact.html">Interactivity</a>].
+ Dynamic document content can be achieved via
+ <a href="animate.html">declarative animation</a> or by scripts
+ modifying the <a href="svgdom.html">SVG DOM</a>.)</li>
+</ul>
+
+<p>Specific criteria that apply to both <em>Conforming Static SVG Viewers</em>
+and <em>Conforming Dynamic SVG Viewers</em>:</p>
+
+<ul>
+ <li>The program must also be a <a href="#ConformingSVGInterpreters">Conforming SVG Interpreter</a>.</li>
+
+ <li>For interactive user environments, facilities must exist
+ for zooming and panning of stand-alone SVG documents or SVG
+ document fragments embedded within parent XML documents.</li>
+
+ <li>In environments that have appropriate user interaction
+ facilities, the viewer must support the ability to activate
+ hyperlinks.</li>
+
+ <li>If printing devices are supported, SVG content must be
+ printable at printer resolutions with the same graphics
+ features available as required for display (e.g., the
+ specified colors must be rendered on color printers).</li>
+
+ <li>On systems where this information is available, the
+ parent environment must provide the viewer with information
+ about physical device resolution. In situations where this
+ information is impossible to determine, the parent
+ environment shall pass a reasonable value for device
+ resolution which tends to approximate most common target
+ devices.</li>
+
+ <li>The viewer must support JPEG and PNG
+ image formats [<a href="refs.html#ref-JPEG">JPEG</a>] [<a href="refs.html#ref-PNG">PNG</a>].</li>
+
+ <li>Resampling of image data must be consistent with the
+ specification of property <a>'image-rendering'</a>.</li>
+
+ <li>The viewer must support alpha channel blending of the
+ image of the SVG content onto the target canvas.</li>
+
+ <li>SVG implementations must correctly support
+ <a href="http://www.ietf.org/rfc/rfc1952.txt">gzip-encoded</a>
+ [<a href="refs.html#ref-RFC1952">RFC1952</a>] and
+ <a href="http://www.ietf.org/rfc/rfc1951.txt">deflate-encoded</a>
+ [<a href="refs.html#ref-RFC1951">RFC1951</a>] data streams,
+ for any content type (including SVG, script files, images).
+ SVG implementations that support HTTP must support these
+ encodings according to the
+ <a href="http://www.ietf.org/rfc/rfc2616.txt">HTTP 1.1</a>
+ specification [<a href="refs.html#ref-RFC2616">RFC2616</a>];
+ in particular, the client must specify with an "Accept-Encoding:"
+ request header [<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.3">HTTP-ACCEPT-ENCODING</a>]
+ those encodings that it accepts, including at minimum gzip
+ and deflate, and then decompress any
+ <a href="http://www.ietf.org/rfc/rfc1952.txt">gzip-encoded</a> and
+ <a href="http://www.ietf.org/rfc/rfc1951.txt">deflate-encoded</a>
+ data streams that are downloaded from the server. When an SVG
+ viewer retrieves compressed content (e.g., an .svgz file) over
+ HTTP, if the "Content-Encoding" and "Transfer-Encoding" response
+ headers are missing or specify a value that does not match the
+ compression method that has been applied to the content, then
+ the SVG viewer must not render the content and must treat the
+ document as being <a href="implnote.html#ErrorProcessing">in error</a>.</li>
+
+ <li>The viewer must support base64 encoded content using the
+ <a href="http://www.ietf.org/rfc/rfc2397.txt">"data:" URL scheme</a>
+ [<a href="refs.html#ref-RFC2397">RFC2397</a>]
+ wherever URI referencing of whole documents (such as raster images,
+ SVG documents, fonts and color profiles) is permitted within
+ SVG content. (Note: fragments of SVG content which do not
+ constitute an entire SVG document are not available using the
+ "data:" URL scheme.)</li>
+
+ <li>
+ The viewer must support the following W3C Recommendations
+ with regard to SVG content:
<ul>
- <li>The program must also be a <a
- href="#ConformingSVGInterpreters">Conforming SVG
- Interpreter</a>,</li>
- <li>For interactive user environments, facilities must exist
- for zooming and panning of stand-alone SVG documents or SVG
- document fragments embedded within parent XML documents.</li>
- <li>In environments that have appropriate user interaction
- facilities, the viewer must support the ability to activate
- hyperlinks.</li>
- <li>If printing devices are supported, SVG content must be
- printable at printer resolutions with the same graphics
- features available as required for display (e.g., the
- specified colors must be rendered on color printers).</li>
- <li>On systems where this information is available, the
- parent environment must provide the viewer with information
- about physical device resolution. In situations where this
- information is impossible to determine, the parent
- environment shall pass a reasonable value for device
- resolution which tends to approximate most common target
- devices.</li>
- <li>The viewer must support JPEG and PNG
- image formats [<a href="refs.html#ref-JPEG">JPEG</a>] [<a href="refs.html#ref-PNG">PNG</a>].</li>
- <li>Resampling of image data must be consistent with the
- specification of property <a>'image-rendering'</a>.</li>
- <li>The viewer must support alpha channel blending of the
- image of the SVG content onto the target canvas.</li>
- <li>SVG implementations must correctly support <a
- href="http://www.ietf.org/rfc/rfc1952.txt">gzip-encoded</a>
- [<a href="refs.html#ref-RFC1952">RFC1952</a>] and <a
- href="http://www.ietf.org/rfc/rfc1951.txt">deflate-encoded</a>
- [<a href="refs.html#ref-RFC1951">RFC1951</a>] data streams,
- for any content type (including SVG, script files, images).
- SVG implementations that support HTTP must support these
- encodings according to the <a
- href="http://www.ietf.org/rfc/rfc2616.txt">HTTP 1.1</a>
- specification [<a href="refs.html#ref-RFC2616">RFC2616</a>];
- in particular, the client must specify with an "Accept-Encoding:"
- request header [<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.3">HTTP-ACCEPT-ENCODING</a>]
- those encodings that it accepts, including at minimum gzip
- and deflate, and then decompress any <a
- href="http://www.ietf.org/rfc/rfc1952.txt">gzip-encoded</a> and
- <a href="http://www.ietf.org/rfc/rfc1951.txt">deflate-encoded</a>
- data streams that are downloaded from the server. When an SVG
- viewer retrieves compressed content (e.g., an .svgz file) over
- HTTP, if the "Content-Encoding" and "Transfer-Encoding" response
- headers are missing or specify a value that does not match the
- compression method that has been applied to the content, then
- the SVG viewer must not render the content and must treat the
- document as being <a href="implnote.html#ErrorProcessing">in error</a>.</li>
- <li>The viewer must support base64 encoded content using the
- <a href="http://www.ietf.org/rfc/rfc2397.txt">"data:" URL scheme</a>
- [<a href="refs.html#ref-RFC2397">RFC2397</a>]
- wherever URI referencing of whole documents (such as raster images,
- SVG documents, fonts and color profiles) is permitted within
- SVG content. (Note: fragments of SVG content which do not
- constitute an entire SVG document are not available using the
- "data:" URL scheme.)</li>
- <li>
- The viewer must support the following W3C Recommendations
- with regard to SVG content:
- <ul>
- <li>complete support for the <a href="http://www.w3.org/TR/2008/REC-xml-20081126/">XML 1.0 specification</a>
- [<a href="refs.html#ref-XML10">XML10</a>].</li>
- <li>complete support for inclusion of non-SVG namespaces
- within SVG content as defined in <a href="http://www.w3.org/TR/2006/REC-xml-names-20060816/"><cite>Namespaces in XML</cite></a>
- [<a href="refs.html#ref-XML-NS">XML-NS</a>].
- (Note that data from non-SVG namespaces are included in
- the DOM but are otherwise ignored.)</li>
- </ul>
- </li>
- <li>All visual rendering must be accurate to within one
- device pixel (px unit) to the mathematically correct result
- at the initial 1:1 zoom ratio. It is suggested that viewers
- attempt to keep a high degree of accuracy when zooming.</li>
- <li>On systems which support accurate sRGB
- [<a href="refs.html#ref-SRGB">SRGB</a>] color, all
- sRGB color computations and all resulting color values must
- be accurate to within one sRGB color component value, where
- sRGB color component values range from 0 to 255.</li>
+ <li>complete support for the <a href="http://www.w3.org/TR/2008/REC-xml-20081126/">XML 1.0 specification</a>
+ [<a href="refs.html#ref-XML10">XML10</a>].</li>
+
+ <li>complete support for inclusion of non-SVG namespaces
+ within SVG content as defined in <a href="http://www.w3.org/TR/2006/REC-xml-names-20060816/"><cite>Namespaces in XML</cite></a>
+ [<a href="refs.html#ref-XML-NS">XML-NS</a>].
+ (Note that data from non-SVG namespaces are included in
+ the DOM but are otherwise ignored.)</li>
</ul>
- <p>Although anti-aliasing support is not a strict requirement
- for a Conforming SVG Viewer, it is highly recommended for
- display devices. Lack of anti-aliasing support will generally
- result in poor results on display devices.</p>
- <p>Specific criteria that apply to only <em>Conforming Dynamic
- SVG Viewers</em>:</p>
- <ul>
- <li>In Web browser environments, the viewer must have the
- ability to search and select text strings within SVG
- content.</li>
- <li>If display devices are supported, the viewer must have
- the ability to select and copy text from SVG content to the
- system clipboard.</li>
- <li>The viewer must have complete support for an
- ECMAScript binding of the <a href="svgdom.html">SVG Document Object
- Model</a> [<a href="refs.html#ref-ECMA-262">ECMA-262</a>].</li>
- </ul>
- <p>The <a href="http://www.w3.org/WAI/">Web Accessibility Initiative</a>
- is defining <a href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/"><cite>User Agent Accessibility Guidelines 1.0</cite></a>
- [<a href="refs.html#ref-UAAG">UAAG</a>]. Viewers are
- encouraged to conform to the Priority 1 accessibility
- guidelines defined in this document, and preferably also
- Priorities 2 and 3. Once the guidelines are completed, a future
- version of this specification is likely to require conformance
- to the Priority 1 guidelines in Conforming SVG Viewers.</p>
+ </li>
- <p id="ConformingHighQualitySVGViewers">A higher order concept is that of a <em>Conforming
- High-Quality SVG Viewer</em>, with sub-categories
- <em>Conforming High-Quality Static SVG Viewer</em> and
- <em>Conforming High-Quality Dynamic SVG Viewer</em>.</p>
- <p>Both a <em>Conforming High-Quality Static SVG Viewer</em>
- and a <em>Conforming High-Quality Dynamic SVG Viewer</em> must
- support the following additional features:</p>
- <ul>
- <li>Professional-quality results with good processing and
- rendering performance and smooth, flicker-free
- animations.</li>
- <li>On low-resolution devices such as display devices at
- 150dpi or less, support for smooth edges on lines, curves and
- text. (Smoothing is often accomplished using anti-aliasing
- techniques.)</li>
- <li>Color management via ICC profile support (i.e., the
- ability to support colors defined using ICC profiles).</li>
- <li>Resampling of image data must conform to the requirements
- for Conforming High-Quality SVG Viewers as specified in the
- description of property <a>'image-rendering'</a>.</li>
- <li>At least double-precision floating point computation on
- coordinate system transformation numerical calculations.</li>
- </ul>
- <p>A <em>Conforming High-Quality Dynamic SVG Viewer</em> must
- support the following additional features:</p>
- <ul>
- <li>Progressive rendering and animation effects (i.e., the
- start of the document will start appearing and animations
- will start running in parallel with downloading the rest of
- the document).</li>
- <li>Restricted screen updates (i.e., only required areas of
- the display are updated in response to redraw events).</li>
- <li>Background downloading of images and fonts retrieved from
- a Web server, with updating of the display once the downloads
- are complete.</li>
- </ul>
- <p>A <em>Conforming SVG Viewer</em> must be able to apply
- styling properties to SVG content using <a
- href="styling.html#AlternativesForStyling">presentation
- attributes</a>.</p>
- <p>If the user agent supports <a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/"><cite>Cascading Style Sheets, level 2</cite></a>
- [<a href="refs.html#ref-CSS2">CSS2</a>], a
- <em>Conforming SVG Viewer</em> must support CSS styling of SVG
- content and must support all features from
- CSS2 that are described in this specification as applying to SVG (see
- <a href="styling.html#PropertiesFromCSS2">properties shared with CSS and XSL</a>,
- <a href="styling.html#StylingWithCSS">Styling with CSS</a> and
- <a href="styling.html#SVGUseOfCSS">Facilities from CSS and XSL used by SVG</a>).
- The supported features from CSS2 must be implemented in accordance with
- the <a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/conform.html#conformance">conformance
- definitions from the CSS2 specification</a>
- ([<a href="refs.html#ref-CSS2">CSS2</a>], section 3.2).</p>
- <p>If the user agent includes an HTML or XHTML viewing
- capability or can apply CSS/XSL styling properties to XML
- documents, then a <em>Conforming SVG Viewer</em> must support
- resources of MIME type "image/svg+xml" wherever raster image
- external resources can be used, such as in the HTML or XHTML
- <span class="element-name">'img'</span> element and in CSS/XSL
- properties that can refer to raster image resources (e.g.,
- <span class="property">'background-image'</span>).</p>
+ <li>All visual rendering must be accurate to within one
+ device pixel (px unit) to the mathematically correct result
+ at the initial 1:1 zoom ratio. It is suggested that viewers
+ attempt to keep a high degree of accuracy when zooming.</li>
+
+ <li>On systems which support accurate sRGB
+ [<a href="refs.html#ref-SRGB">SRGB</a>] color, all
+ sRGB color computations and all resulting color values must
+ be accurate to within one sRGB color component value, where
+ sRGB color component values range from 0 to 255.</li>
+</ul>
+
+<p>Although anti-aliasing support is not a strict requirement
+for a Conforming SVG Viewer, it is highly recommended for
+display devices. Lack of anti-aliasing support will generally
+result in poor results on display devices.</p>
+
+<p>Specific criteria that apply to only <em>Conforming Dynamic
+SVG Viewers</em>:</p>
+
+<ul>
+ <li>In Web browser environments, the viewer must have the
+ ability to search and select text strings within SVG
+ content.</li>
+
+ <li>If display devices are supported, the viewer must have
+ the ability to select and copy text from SVG content to the
+ system clipboard.</li>
+
+ <li>The viewer must have complete support for an
+ ECMAScript binding of the <a href="svgdom.html">SVG Document Object Model</a>
+ [<a href="refs.html#ref-ECMA-262">ECMA-262</a>].</li>
+</ul>
+
+<p>The <a href="http://www.w3.org/WAI/">Web Accessibility Initiative</a>
+is defining <a href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/"><cite>User Agent Accessibility Guidelines 1.0</cite></a>
+[<a href="refs.html#ref-UAAG">UAAG</a>]. Viewers are
+encouraged to conform to the Priority 1 accessibility
+guidelines defined in this document, and preferably also
+Priorities 2 and 3. Once the guidelines are completed, a future
+version of this specification is likely to require conformance
+to the Priority 1 guidelines in Conforming SVG Viewers.</p>
+
+<p id="ConformingHighQualitySVGViewers">A higher order concept is that of a
+<em>Conforming High-Quality SVG Viewer</em>, with sub-categories
+<em>Conforming High-Quality Static SVG Viewer</em> and
+<em>Conforming High-Quality Dynamic SVG Viewer</em>.</p>
+
+<p>Both a <em>Conforming High-Quality Static SVG Viewer</em>
+and a <em>Conforming High-Quality Dynamic SVG Viewer</em> must
+support the following additional features:</p>
+
+<ul>
+ <li>Professional-quality results with good processing and
+ rendering performance and smooth, flicker-free
+ animations.</li>
+
+ <li>On low-resolution devices such as display devices at
+ 150dpi or less, support for smooth edges on lines, curves and
+ text. (Smoothing is often accomplished using anti-aliasing
+ techniques.)</li>
+
+ <li>Color management via ICC profile support (i.e., the
+ ability to support colors defined using ICC profiles).</li>
+
+ <li>Resampling of image data must conform to the requirements
+ for Conforming High-Quality SVG Viewers as specified in the
+ description of property <a>'image-rendering'</a>.</li>
+
+ <li>At least double-precision floating point computation on
+ coordinate system transformation numerical calculations.</li>
+</ul>
+
+<p>A <em>Conforming High-Quality Dynamic SVG Viewer</em> must
+support the following additional features:</p>
+
+<ul>
+ <li>Progressive rendering and animation effects (i.e., the
+ start of the document will start appearing and animations
+ will start running in parallel with downloading the rest of
+ the document).</li>
+
+ <li>Restricted screen updates (i.e., only required areas of
+ the display are updated in response to redraw events).</li>
+
+ <li>Background downloading of images and fonts retrieved from
+ a Web server, with updating of the display once the downloads
+ are complete.</li>
+</ul>
+
+<p>A <em>Conforming SVG Viewer</em> must be able to apply
+styling properties to SVG content using <a>presentation attributes</a>.</p>
+
+<p>If the user agent supports <a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/"><cite>Cascading Style Sheets, level 2</cite></a>
+[<a href="refs.html#ref-CSS2">CSS2</a>], a
+<em>Conforming SVG Viewer</em> must support CSS styling of SVG
+content and must support all features from
+CSS2 that are described in this specification as applying to SVG (see
+<a href="styling.html#PropertiesFromCSS2">properties shared with CSS and XSL</a>,
+<a href="styling.html#StylingWithCSS">Styling with CSS</a> and
+<a href="styling.html#SVGUseOfCSS">Facilities from CSS and XSL used by SVG</a>).
+The supported features from CSS2 must be implemented in accordance with
+the <a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/conform.html#conformance">conformance
+definitions from the CSS2 specification</a>
+([<a href="refs.html#ref-CSS2">CSS2</a>], section 3.2).</p>
+
+<p>If the user agent includes an HTML or XHTML viewing
+capability or can apply CSS/XSL styling properties to XML
+documents, then a <em>Conforming SVG Viewer</em> must support
+resources of MIME type "image/svg+xml" wherever raster image
+external resources can be used, such as in the HTML or XHTML
+<span class="element-name">'img'</span> element and in CSS/XSL
+properties that can refer to raster image resources (e.g.,
+<span class="property">'background-image'</span>).</p>
</body>
</html>