Appendix D: Conformance Criteria


Contents

This appendix is informative, not normative.

D.1 Introduction

Different sets of SVG conformance criteria exist for:

D.2 Conforming SVG Documents

An SVG document is a Conforming SVG Document if it adheres to the specification described in this document (Scalable Vector Graphics (SVG) Specification) and also:

D.3 Conforming SVG Stand-Alone Files

A file is a Conforming SVG Stand-Alone File if:

D.4 Conforming SVG Included Documents

SVG documents can be included within parent XML documents using the XML namespace facilities described in Namespaces in XML.

An SVG document that is included within a parent XML document is a Conforming Included SVG Document if the SVG document, when taken out of the parent XML document, conforms to the SVG Document Type Definitions (DTD).

In particular, note that individual elements from the SVG namespace cannot be used by themselves. Thus, the SVG part of the following document is not conforming:

<?xml version="1.0" standalone="no"?>
<!DOCTYPE SomeParentXMLGrammar PUBLIC "-//SomeParent" 
  "http://SomeParentXMLGrammar.dtd">
<ParentXML>
  <!-- Elements from ParentXML go here -->

  <!-- The following is not conforming -->
  <z:rect xmlns:z="http://www.w3.org/Graphics/SVG/SVG-19990812.dtd"
            x="0" y="0" width="10" height="10" />

  <!-- More elements from ParentXML go here -->
</ParentXML>

Instead, for the SVG part to become a Conforming Included SVG Document, the file could be modified as follows:

<?xml version="1.0" standalone="no"?>
<!DOCTYPE SomeParentXMLGrammar PUBLIC "-//SomeParent" 
  "http://SomeParentXMLGrammar.dtd">
<ParentXML>
  <!-- Elements from ParentXML go here -->

  <!-- The following is conforming -->
  <z:svg xmlns:z="http://www.w3.org/Graphics/SVG/SVG-19990812.dtd"
         width="100px" height="100px" >
    <z:rect x="0" y="0" width="10" height="10" />
  </z:svg>

  <!-- More elements from ParentXML go here -->
</ParentXML>

D.5 Conforming SVG Generators

A Conforming SVG Generator is a program which:

SVG generators are encouraged to follow W3C developments in the area of internationalization. Of particular interest is the W3C Character Model and the concept of Webwide Early Uniform Normalization, 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 W3C Character Model in Conforming SVG Generators.

D.6 Conforming SVG Interpreters

An SVG interpreter is a program which can parse and process SVG documents. A Conforming SVG Interpreter must be able to:

D.7 Conforming SVG Viewers

An SVG viewer is a program which can parse and process an SVG document and render the contents of the document onto some sort of output medium such as a display or printer. Usually, an SVG Viewer is also an SVG Interpreter.

Specific criteria for a Conforming SVG Viewer:

Although anti-aliasing support isn't a strict requirement for a Conforming SVG Viewer, it is highly recommended. Lack of anti-aliasing support will generally result in poor results on display devices.

A higher class concept is that of a Conforming High-Quality SVG Viewer which must support the following additional features: