Sustainability of Digital Formats: Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

Scalable Vector Graphics (SVG), Version 2

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name Scalable Vector Graphics (SVG), Version 2
Description

SVG is an XML-based format and markup language for describing two-dimensional graphics. For information about the structure and features of the format, see SVG_family. SVG Version 2 became a W3C Candidate Recommendation in 2016. See https://www.w3.org/TR/SVG2/ for the latest approved version of the recommendation. For the latest editor's draft for more recent information as to the content expected in the next version of the recommendation for SVG 2, see https://svgwg.org/svg2-draft/.

See SVG_family for a general description of graphic features supported by SVG and the structure of an SVG file. Most features are common to all versions of SVG.

According to the Wikipedia entry for Scalable Vector Graphics, "SVG 2.0 removes or deprecates some features of SVG 1.1 and incorporates new features from HTML 5 and Web Open Font Format." See also SVG 2 Requirements Input for early plans. For detailed changes as currently proposed, see Scalable Vector Graphics (SVG) 2 -- Candidate Recommendation. Appendix K: Changes from SVG 1.1. Many changes relate to added options for existing features. Few relate to changes in whether a feature is supported in a conceptual sense or not.

An important objective of SVG 2 is to improve compatibility with related standards as they are updated and implemented by browsers, (e.g., CSS, HTML, and the Web Open Font Format (WOFF), which is a container format or "wrapper" for font data in already-existing formats). As a result, chapters whose normative content in the SVG 1.1 specification has been moved to other specifications have been removed from the SVG 2 draft but the features can still be supported in compliant documents. For example, new related specifications cover:

  • Filters: Filter Effects Module Level 1 from W3C. This specification describes graphics filters in a manner that allows them to be used in any content that can be styled by CSS, including HTML and SVG. For examples of uses of filters, see SVG_family.
  • Animation: Web Animations from W3C. The Web Animations model is intended to provide the features necessary for expressing CSS Transitions, CSS Animations, and animations as supported in SVG 1.1.
  • Clipping and masking: CSS Masking Module Level 1 from W3C. CSS Masking provides two means for partially or fully hiding portions of visual elements: masking and clipping.
  • Color: CSS Color Module Level 3 from W3C. CSS uses color-related properties and values to color the text, backgrounds, borders, and other parts of elements in a document or graphic. This specification describes color values and properties for foreground color and opacity/transparency. These include properties and values from CSS level 2 and new values.

For many styling features, SVG 1.1 was closely related to CSS2. Since CSS2 was published in 2011, the CSS specification has been divided into modules. SVG 2 relies on more recent specifications for some CSS modules; see Normative references in SVG 2 (Editor's Draft) and see W3C home page for CSS for development status of various CSS modules.

The latest editor's draft for SVG includes notes that relate to implementation of proposed additions. For example, in 8.13 Vector effects as of March 2020 was a note indicating, "Values of vector-effect other than non-scaling-stroke and none are at risk of being dropped from SVG 2 due to a lack of implementations. Feedback from implementers is requested, regarding the practicality of implementing them as currently specified, during the implementation period." Appendix K in the latest editor's draft identifies a more extensive list of proposed changes from SVG 1.1 than in the Candidate Recommendation and also has links to working group discussions on issues and edits.

Production phase See SVG_family.
Relationship to other formats
    Subtype of SVG_family, Scalable Vector Graphics (SVG) File Format Family
    Subtype of XML, XML (EXtensible Markup Language)
    Has earlier version SVG_1_1, Scalable Vector Graphics (SVG), Version 1.1. Initially published as a W3C Recommendation in 2003 , with a second edition published in 2011.
    Affinity to SVG_Tiny_1_2, Scalable Vector Graphics (SVG) Tiny, Version 1.2. SVG Profile, released in December 2008, intended for implementation on a range of devices, including cellphones and PDAs as well as laptops and personal computers. SVG 2 incorporates some features introduced with SVG Tiny 1.2.

Local use Explanation of format description terms

LC experience or existing holdings See SVG_family.
LC preference The Library of Congress Recommended Formats Statement (RFS) includes SVG as a preferred format for other graphic images in digital form. The RFS does not specify a version of SVG.

Sustainability factors Explanation of format description terms

Disclosure Openly documented as a candidate standard by the World Wide Web Consortium (W3C). Maintained by SVG Working Group. See https://www.w3.org/Graphics/SVG/ and SVG Working Group Charter (starting 22 March 2019), current as of early 2020.
    Documentation

The latest W3C recommendation is at https://www.w3.org/TR/SVG2/. As of April 2020, SVG 2 is a candidate recommendation, available at Scalable Vector Graphics (SVG) 2, W3C Candidate Recommendation 04 October 2018. The latest editor's draft is available as SVG 2 Editor's Draft.

See also SVG_family.

Adoption

The editor's draft for the SVG 2 specification in February 2020, says, 'All features in this specification depend upon implementation in browsers or authoring tools. If a feature is not certain to be implemented, we define that feature as "at risk". At-risk features will be removed from the current specification, and may be included in future versions of the specification. If an at-risk feature is particularly important to authors of SVG, those authors are encouraged to give feedback to implementers regarding its priority.'

The following features in the Candidate Recommendation are at risk, and may be dropped:

  • More than one title or desc to provide localisation
  • Nested links
  • The vector-effect options other than non-scaling-stroke
  • stroke-linejoin options miter-clip and arcs
  • The shape-inside and shape-subtract properties

The compilers of this resource assume that all other changes from SVG 1.1 are already supported by mainstream browsers or commitments have been made by browser developers. Note that the HTML Living Standard (formerly known as HTML 5) has used SVG 2 as its normative reference for SVG since mid-2018. See HTML | 4.8.17 SVG. Comments welcome.

See SVG_family for adoption of SVG in general, which is primarily of SVG 1.1, the approved W3C Recommendation for SVG since 2003.

    Licensing and patents See SVG_family.
Transparency See SVG_family.
Self-documentation See SVG_family.
External dependencies See SVG_family.
Technical protection considerations See SVG_family.

Quality and functionality factors Explanation of format description terms

Still Image
Normal rendering Good support. See SVG_family.
Clarity (high image resolution)

See SVG_family for general features of SVG that contribute to image clarity, including scalability.

Color support in SVG 2 is based on CSS Color Module Level 3. Color properties use either a color keyword or numerical syntax. Supported syntaxes are RGB, RGBA, HSL (hue-saturation-lightness), and HSLA. Color name keywords must come from the list at 4.3. Extended color keywords.

When an embedded raster image is rendered within an SVG graphic, the SVG specification indicates that the image should be resampled using standard algorithms to produce samples at the positions required on the output device. Resampling must be consistent with the associated image-rendering property, which allows the creator to provide a hint about how to make speed vs. quality tradeoffs when rendering. See 13.10.3. The 'image-rendering' property in the editor's draft for SVG 2.

Color maintenance As of April 2020, the latest editor's draft of SVG 2 does not explicitly support use of profiles as defined by the International Color Consortium (ICC). Colors in SVG 2 are based on CSS Color Module Level 3; support in CSS for ICC profiles has been deferred to a future CSS Color Module Level 4. The SVG 2 specification provides an informative reference to Specification ICC.1:2010 (Profile version 4.3.0.0) and suggests that a Conforming High-Quality SVG Viewer should support ICC profiles. The compilers of this resource understand from Issue #532: ICC support in Conforming High-Quality SVG viewer that it is likely that no conforming high-quality SVG viewers exist as of early 2020 and that a future draft may add explicit ICC support back if CSS Color Module Level 4 becomes a W3C recommendation before SVG 2 does. Comments welcome.
Support for vector graphics, including graphic effects and typography Rich support. See SVG_family.

File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension svg
 
Internet Media Type image/svg+xml
The media type registration for SVG from Appendix P of the SVG 1.1 specification is included in the draft SVG 2 specification as Appendix J as of early 2020.
XML namespace declaration xmlns="http://www.w3.org/2000/svg"
This namespace declaration occurs in the mandatory <svg> element that serves as the root of a free-standing SVG file. The same namespace is used by all versions of SVG. See https://www.w3.org/2000/svg, which states that "The SVG namespace is mutable; names may be added over time by the W3C SVG Working Group."
Pronom PUID See note.  As of early 2020, there is no entry in PRONOM for version 2 of SVG.
Wikidata Title ID Q2078
Covers all versions of SVG. See https://www.wikidata.org/wiki/Q2078.

Notes Explanation of format description terms

General

See SVG_family.

History

See SVG_family.


Format specifications Explanation of format description terms


Useful references

URLs


Last Updated: 08/10/2021