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) Tiny, Version 1.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) Tiny, Version 1.2
Description

SVG 1.2 Tiny (referred to on this site as SVG_Tiny_1_2) is a profile of SVG_1_1 intended for implementation on a range of devices, including cellphones and PDAs. SVG_Tiny_1_2 includes a subset of the features included in SVG_1_1, along with new features to extend the capabilities of SVG. SVG_1_1 (SVG 1.1) is sometimes referred to as "SVG 1.1 Full" on W3C SVG pages. The specification says, "this specification represents the core for a set of modular extensions, but is named SVG Tiny for historical reasons, as a profile for mobile devices. Future versions of this specification will maintain backwards compatibility with previous versions of the language, in a continuing line of technology, but will bear the name 'SVG Core' to represent this relationship."

SVG_Tiny_1_2 can be validated using a normative RelaxNG schema. This is in contrast to SVG_1_1,for which an XML DTD was provided.

According to Adobe Illustrator Help -- Saving artwork: Save in SVG format, SVG Tiny does not support gradients, transparency, clipping, masks, symbols, patterns, underline text, strike through text, vertical text, or SVG filter effects.

SVG_Tiny_1_2 may include animation; see Notes below.

Production phase Generally a final-state (end-user delivery) format.
Relationship to other formats
    Subtype of XML, XML (EXtensible Markup Language)
    Modification of SVG_1_1, Scalable Vector Graphics (SVG), Version 1.1
    Has earlier version

SVG Tiny 1.1, not described separately on this Web site. SVG Tiny 1.2 is a backwards compatible upgrade to SVG Tiny 1.1.

    Other Scalable Vector Graphics (SVG), Version 2.0. As of September 2015, a working draft is available at http://www.w3.org/TR/SVG2/. Not described at this Web site at this time.

Local use Explanation of format description terms

LC experience or existing holdings None
LC preference None

Sustainability factors Explanation of format description terms

Disclosure Open standard from W3C.
    Documentation Scalable Vector Graphics (SVG) Tiny 1.2 Specification, published as a W3C Recommendation on 22 December 2008. SVG document instances must conform to the RelaxNG Schema for SVG Tiny 1.2 in Appendix N.
Adoption

See SVG_1_1.

In 2013, Ben Frain reported, "Furthermore, whilst ‘Tiny 1.2′ is widely supported on mobile devices (including iOS) good ol’ Microsoft don’t support it. Even IE10 on Surface does NOT support SVG Tiny 1.2 profile."

    Licensing and patents No special issues. As of October 2015, the SVG Working Group was not aware of any royalty-bearing patents they believe to be essential to SVG. See SVG Working Group Patent Policy Status
Transparency Based on XML, hence inherently transparent.
Self-documentation Includes <metadata> element designed to hold elements from other XML namespaces. Hence an SVG file can contain rich descriptive or administrative metadata using any other DTD or schema.
External dependencies None.
Technical protection considerations No issues.

Quality and functionality factors Explanation of format description terms

Still Image
Normal rendering Good support.
Clarity (high image resolution) Scalable. Optional settings for rendering hints: crispEdges and geometricPrecision.
Color maintenance For SVG_Tiny_1_2, colors are specified in the sRGB color space. ICC Profiles do not appear to be supported in this profile of SVG.
Support for vector graphics, including graphic effects and typography Rich support for capabilities found in "draw" and "paint" programs.
Support for multispectral bands Not applicable.
Functionality beyond normal rendering Support for animations; embedded audio and video; text in alternate languages for labels; interactivity such as localized zooming and panning; external links, etc.

File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension svg
svgz
Specification recommends that gzip-compressed SVG files have the extension ".svgz" (all lowercase) on all platforms.
Internet Media Type image/svg+xml
Proposed in standards documentation.
Mac OS file type svg
Specification recommends that SVG files stored on Macintosh file systems be given a file type of "svg " (all lowercase, with a space character as the fourth letter).
Pronom PUID fmt/413
See http://www.nationalarchives.gov.uk/PRONOM/fmt/413.

Notes Explanation of format description terms

General

Sample SVG_Tiny_1_1 file. Notice version and baseProfile attributes.

<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" version="1.2" baseProfile="tiny" viewBox="0 0 30 30">
<desc>Example SVG file</desc>
<rect x="10" y="10" width="10" height="10" fill="red"/>
</svg>

Animations in SVG: Animations can be defined and triggered either declaratively (i.e., by embedding SVG animation elements in SVG content) or via scripting. SVG Tiny 1.2 incorporates some features from the Synchronized Multimedia Integration Language (SMIL) 2.1 Specification [SMIL21], including the 'prefetch' and 'switch' elements, the 'systemLanguage' attribute, animation features (see Animation) and the ability to reference audio and video media (see Multimedia). SVG's animation features incorporate and extend the general-purpose XML animation capabilities described in SMIL 2.1. In addition, SVG Tiny 1.2 has been designed to allow SMIL 2.1 to use animated or static SVG content as media components. See also SVG_1_1.

History

To quote from the SVG_Tiny_1_2 specification:

"Industry demand, overwhelming support in the SVG working group and requests from the SVG developer community established the need for some form of SVG suited to displaying vector graphics on small devices. Moreover, the mission statement of SVG 1.0 specifically addressed small devices as a target area for vector graphics display. In order to meet these demands the SVG Working Group created a profile specification that was suitable for use on mobile devices as well as on desktops. The Mobile SVG Profiles specification [SVGM11] (also known as SVG Mobile 1.1) addressed that requirement and defined two profiles to deal with the variety of mobile devices having different characteristics in terms of CPU speed, memory size, and color support. The SVG Mobile 1.1 specification defined SVG Tiny (SVGT) 1.1, suitable for highly restricted mobile devices; it also defined a second profile, SVG Basic (SVGB) 1.1, targeted for higher level mobile devices. The major difference between SVG Tiny 1.1 and SVG Basic 1.1 was the absence of scripting and styling in SVG 1.1 Tiny, and thus any requirement to maintain a Document Object Model (DOM). This saved a substantial amount of memory in most implementations.
Experience with SVG Tiny 1.1, which was widely adopted in the industry and shipped as standard on a variety of cellphones, indicated that the profile was a little too restrictive in some areas. Features from SVG 1.1 such as gradients and opacity were seen to have substantial value for creating attractive content, and were shown to be implementable on cellphones. There was also considerable interest in adding audio and video capabilities, building on the SMIL support in SVG Tiny 1.1.
Advances such as DOM Level 3, which introduces namespace support and value normalization, prompted a second look at the use of programming languages and scripting with SVG Tiny. In conjunction with the Java JSR 226 group [JSR226], a lightweight interface called the Micro DOM, or uDOM, was developed. This could be, but need not be, implemented on top of DOM Level 3. With this advance, lightweight programmatic control of SVG (for example, for games or user interfaces) and use with scripting languages, became feasible on the whole range of platforms from cellphones through to desktops. In consequence, there is only a single Mobile profile for SVG 1.2: SVG Tiny 1.2."

The SVG Tiny 1.2 added features requested by SVG authors, implementors and users of SVG Tiny 1.1, not described separately on this Web site. SVG Tiny 1.2 is a backwards compatible upgrade to SVG Tiny 1.1. SVG Tiny 1.1 content will render the same in conformant SVG Tiny 1.2 user agents as it did in conformant SVG Tiny 1.1 user agents.

See SVG_1_1 for history of SVG in general.


Format specifications Explanation of format description terms


Useful references

URLs


Last Updated: 07/27/2017