Sustainability of Digital Formats: Planning for Library of Congress Collections
|Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact|
|Full name||OpenDocument Drawing Document Format (ODG), Version 1.2. Part of OASIS Open Document Format for Office Applications, Version 1.2 and the equivalent ISO 26300-1:2015.|
The OpenDocument Drawing Document Format (ODG), Version 1.2 (given the short name ODF_draw_1_2 here) is a format for editable graphics documents. It is one of several subtypes in the ODF family for particular content categories. Designed to be a native format for vector-graphics applications, the format is sometimes called ODG after its usual file extension. The term ODG will be used here to refer to ODF_draw_1_2 and other chronological versions of the OpenDocument Drawing format. This description relates primarily to part 1 of the ODF 1.2 specification as published by OASIS and the equivalent ISO/IEC 26300-1:2015 specification.
The primary ODF graphical markup used in drawings is specified in the draw: namespace, with the draw:page element as a container for a single drawing. This draw:page element can directly contain layers, frames, drawing objects (e.g. rectangles, circles, and other shapes), and forms. These child elements can also be used within textual documents and in spreadsheets. The draw:page element is used for slides in a presentation and in that context, the draw:page element may include animations and notes text associated with the slide. The elements that define drawing objects often permit selected attributes or child elements from SVG_1_1 (Structured Vector Graphics) using svg: as namespace prefix. An additional namespace prefix, dr3d: is used to generate renderings to two dimensions of 3D objects by defining projections, light sources, etc.
The ODF specification covers two physical forms for ODF documents, a flat form as a single XML file and a package form based on the ZIP_6_2_0 format. This description focuses on the more commonly used ZIP-based package format for ODF drawing files, given the .odg file extension. Files using the same markup specification and package but with an extension of .otg are for use as drawing document templates.
An ODF package can be recognized as a drawing (graphics) document in several ways. Externally, there are file extensions for two ways in which ODF drawing documents may be used in graphics applications, as noted above. The primary internal indication is that the mandatory file named mimetype will contain one of the corresponding strings listed as File type signifiers below. An additional way to recognize an ODF drawing document is that the <office:body> element, a child of the root <office:document-content> element in content.xml has the child element <office:drawing>.
The ZIP-based package for any ODF file contains, at a minimum, five files: a one-line mimetype file containing a single text string; content.xml; styles.xml; meta.xml; and settings.xml. The typical content.xml file for a minimal drawing file for a single page has the basic form:
The corresponding styles.xml file will contain additional style specifications, for example, named styles and defaults.
See Notes in ODF Family for more information about the flat XML-only variant of ODF files. For a flat ODF drawing file, the root <office:document> element has an office:mimetype attribute with one of the values listed below as File signifiers.
For details of the ZIP-based package for ODF_draw_1_2, see ODF_package_1_2. The package specification defines the form for a package manifest, and options for digital signatures, encryption, etc.
Apart from changes to the underlying package format, changes made to the markup for ODF drawings between ODF versions 1.1 and 1.2 appear to be few. There were no new elements in the draw: namespace between ODF 1.1 and ODF 1.2. See Appendix G of the ODF 1.2 Part 1 specification for details.
|Production phase||Can be used in any production phase. Particularly used for creating documents (initial state) and for editing and review (middle-state). Documents that are formally published are often converted to an image format that is designed for final publication and not for convenient editing.|
|Relationship to other formats|
|Subtype of||ODF_Family, OpenDocument Format (ODF) Family, OASIS and ISO/IEC 26300|
|Subtype of||ODF_package_1_2, OpenDocument Package Format, ODF 1.2, ISO 26300-3:2015|
|Subtype of||ZIP_6_2_0, ZIP File Format, Version 6.2.0 (PKWARE). Various features of the ZIP File Format are not permitted in ODF.|
|Contains||META-INF/manifest.xml file. This manifest file is mandatory in all ODF packages. Not described separately at this time. See ODF_package_1_2 for more information.|
|Has earlier version||ODG V 1.1, not described separately on this site.|
|Defined via||XML_1_0, XML (Extensible Markup Language) 1.0. A normative RELAX NG schema is part of the specification for ODF 1.2, which includes the specification for drawing documents.|
|LC experience or existing holdings||See ODF_family.|
For vector graphic images for its collections, the Library of Congress prefers formats that are designed for final publication, rather than formats designed as editable. See Recommended Formats Statement: Still Image Works - Other Graphic Images - Digital.
|Disclosure||International open standard. Developed and maintained by OASIS Open Document Format for Office Applications (OpenDocument) TC as part of the OpenDocument Format (ODF) 1.2 specification published by OASIS in 2011. Also approved as part of the equivalent ISO/IEC 26300-1:2015 by ISO/IEC JTC1/SC34.|
Specifications from OASIS: Open Document Format for Office Applications (OpenDocument) Version 1.2. Specification for ODF 1.2 drawing documents are found primarily in chapter 10 of Part 1 of the specification. Since drawings may contain tables, chapter 9 is also relevant. The technical specification is part of a normative RNG schema for primary component files for ODF documents..
The identical specification is published as ISO/IEC 26300-1:2015, Information technology -- Open Document Format for Office Applications (OpenDocument) v1.2 Part 1: OpenDocument Schema.
The ODF 1.2 specification is divided into three parts, with the bulk of the markup specification in Part 1: OpenDocument Schema. The package specification has been moved into a separate Part 3: Packages.
See ODF-Family for a listing of namespaces that can be incorporated into any ODF 1.1 or ODF 1.2 document and links to associated specifications.
The major office suites using ODF as primary native format family include special applications for drawing based on vector graphics and can read and write drawing documents as defined in ODF 1.2:
Vector Graphics applications that can export ODG files include: Inkscape (limited as indicated in manual in late 2015).
Desktop publishing applications that can import ODG files include: Scribus
The adoption of software applications for creating vector graphics depends mainly on (a) the type of graphic being created (e.g., flowchart vs. creative art) and (b) the functional characteristics of the application that appeal to an individual user. The format that is used during the editing phase appears less important than the export formats for the finished graphic.
Microsoft Office, which has supported direct editing of ODF 1.2 text and spreadsheet documents since Office 2013, does not have an independent vector graphics module. Hence, editing of an independent ODF drawing file is not supported in Microsoft Office. See [MS-OODF3] 2.1.6: Part 1, Section 3.5, office:drawing.
|Licensing and patents||No concerns. See ODF-Family.|
The structure and text of an ODG file are all represented in XML and hence viewable without special tools, although XML-aware tools that can show the element hierarchy make viewing and interpretation more convenient. The most commonly used parts, elements, and attributes have recognizable names. Simple documents can be interpreted with very basic tools. However, interpreting the semantics of some elements and the correspondence of some elements and attributes to vector graphics functionality will require not only understanding of the schema and the specification text, but familiarity with the associated functionality.
As for other members of the ODF 1.2 family, ODF_draw_1_2 added support for metadata based on RDF (W3C's Resource Description Framework). As well as using RDF for metadata for the document package as a whole, RDF can be attached to elements within the document's content. The use of "custom" metadata as specified in ODF 1.1 is deprecated in ODF 1.2.
Pre-defined metadata elements for the document as a whole, stored in an office:meta element include:
The pre-defined elements are all optional and repeatable. However, applications are not required to update multiple occurrences in a specific way to reflect modifications to a document.
Also supported in both ODF 1.1 and ODF 1.2 is an XML structure for user-defined metadata, based on triplets of name, data type, and value.
Depends on features used. Drawing documents in ODF_draw_1_2 format may include links to externally stored images, applets or plugins intended to import content from an external document or data source; see clause 10.4 in Part 1 of the specification.
ODF_draw_1_2 files can incorporate other images. PNG is recommended for raster images and SVG for vector graphics. However, other image formats are permitted.
|Technical protection considerations||Encryption is supported for files within an ODF 1.1 or ODF 1.2 package. In addition, an ODF package file may be encrypted during interchange or as part of DRM controlling distribution.|
|Normal rendering||Good support.|
|Clarity (high image resolution)||Scalable.|
|Color maintenance||ODF 1.2 uses the notation #rrggbb to specify colors. The specification does not mention ICC color profiles.|
|Support for vector graphics, including graphic effects and typography||Rich support.|
|Support for multispectral bands||Not applicable.|
|Functionality beyond normal rendering||Support for animations and "scenes" that render 3D objects using specified projection, lighting, etc. Change-tracking in text boxes in drawings.|
||.odg is the extension used for a regular ODF drawing file.|
|Internet Media Type||application/vnd.oasis.opendocument.graphics
||The MIME types for ODF_draw_1_2 are the same as for earlier versions|
|Magic numbers||See note.||Magic numbers that apply to ODF document category subtypes incorporate the magic number for ZIP_PK, the string mimetype at position 30, and the MIME subtype string value at position 38.|
|Indicator for profile, level, version, etc.||ASCII: office:version="1.2"
||The four root elements used in the primary files in an ODF package all require an attribute that records the ODF version. This is the signifier that distinguishes ODF 1.2 packages from earlier versions. Documents without this attribute are assumed to be from version 1.1 or earlier.|
||For OpenDocument Graphics 1.2. See https://www.nationalarchives.gov.uk/pronom/fmt/297.|
|Wikidata Title ID||Q27225801
||For OpenDocument Graphics 1.2. See https://www.wikidata.org/wiki/Q27225801.|
||The extension .otg is used for a drawing document used as a template.|
|Internet Media Type||application/vnd.oasis.opendocument.graphics-template
In addition to specifying the ODF_draw_1_2 free-standing drawing document format, ODF 1.2 specifies how drawings using the same markup can be embedded in textual documents and in presentations. Each slide in an ODF presentation document is a draw:page element. Drawings can be embedded in a textual document in several ways, using the draw:frame element. The draw:frame element may contain detailed drawing markup directly. However, if the draw:frame element has a draw:object or draw:object-ole child element, a separate named object is referred to. This object may be present in the package or linked to externally. Certain drawing elements, such as shapes and lines, can be embedded within paragraphs directly.
The specification for ODF 1.2 Drawings uses several individual elements and attributes from SVG. As well as attributes that define dimensions and positions of shapes, these include svg:title and svg:description to name parts of drawings and offer text to support accessibility. See Proposals/SVG in ODF from January 2011.
ODF 1.2 introduced the concept of an ODF Extended document, and has a related clause 3.17 on Foreign Elements and Attributes. The inclusion of support for this possibility was controversial, judging from a blog post by Dennis Hamilton and subsequent comments, but some mechanism of this sort is necessary to support the introduction and testing of enhancements to the format to fulfill customer demand for new features in applications. ODF 1.1 also permitted the use of elements beyond those covered by the specification. Section 1.5 of the ODF 1.1 specification begins, "Documents that conform to the OpenDocument specification may contain elements and attributes not specified within the OpenDocument schema. Such elements and attributes must not be part of a namespace that is defined within this specification and are called foreign elements and attributes." OASIS produced a so-called "strict" schema, that could be used to permit only elements defined in the specification. The specification indicates how applications should treat foreign elements. The compilers of this resource have not determined whether there is a substantive difference between ODF 1.1 and ODF 1.2 in relation to the inclusion and recommended treatment of foreign elements and attributes. Comments welcome.
Some compatibility/interoperability problems have been reported for different implementations. See Useful References below. The compilers of this resource do not know whether these problems will be addressed in later software releases. Comments welcome.
See ODF_package_1_2 for discussion of changes to ODF in general between versions 1.1 and 1.2. Changes to the specification for drawing documents between versions 1.1 and 1.2 were limited to corrections and small modifications requested by implementers. Appendix G of the ODF 1.2 schema specification indicates that no new elements were added to the draw: namespace and only two new attributes were added.
ODF 1.3 was approved as an OASIS Committee Specification in December 2020, according to a December 4, 2020 announcement. This followed several periods of public review in 2019 and 2020. The next stage in the multi-step OASIS process is to gather three "statements of use", written statements that a party has successfully used or implemented the specification. See Approval of an OASIS Standard.
The specification for ODF 1.3 has been re-organized into four Parts. Part 1 is a brief introduction; Part 2 is the Packages specification; Part 3 defines the OpenDocument Schema, which includes specifications for the ODF content subtypes, including drawings; and Part 4 defines the Recalculated Formula (OpenFormula) Format. The drawing specification is in subclauses 3.5, 10.2.4 and clause 10 (Graphic Content) of ODF 1.3, Part 3. Judging from the change log in Appendix G of ODF 1.3, Part 3, changes related to ODF drawings appear to be mainly clarifications and corrections. Comments welcome.
See ODF_family for more on the history ODF in general.