Release 3.0 Downloads
- ONIX 3.0 Specifications
- Implementation and best practice guide
- Schema definitions
- ONIX 3.0 Tagname converter and Large file splitter
- Code Lists for Release 3.0 NEW ISSUE 35
- How to describe sets and series in ONIX 3.0
- How to describe digital products in ONIX 3.0
- How to send block updates in ONIX 3.0
- How to specify different terms of supply in different territories
- Documentation in other languages
For the core ONIX 3.0 documentation, the package below includes an enhanced Product Information Format Specification in PDF format. For a package containing the same information in HTML format, see the Implementation and Best Practice Guide package below.
The documentation includes the full Specification (covering both the header and the body of the product information record), a full sample message, and rewritten and improved material that was previously available in separate Data Element Summary and XML Technical Notes documents. The package also includes HTML versions of the latest Codelists, which are hyperlinked from the main specification document. The individual codelists should be in a subfolder 'codelists' within the same folder as the main PDF in order for the links to be recognized.
This latest version of the Specification covers 3.0 revision 3 (3.0.3), released April 2016. This revision is fully backward-compatible with earlier versions of the 3.0 specification. A detailed summary of the changes between version 3.0.2 and the latest 3.0.3 is available here. Older summaries for 3.0.1 and 3.0.2 are also available.
A specification for the new ONIX Acknowledgement message is also available. If placed in the same folder as the main ONIX message specification PDF and the 'codelists' subfolder, it too contains hyperlinks linking directly to the codelists.
The ONIX for Books Acknowledgement Format Specification, released January 2015, is a separate and optional message intended to be sent to a data supplier in response to receipt of a standard ONIX for Books message. It allows an ONIX for Books recipient to:
- confirm receipt of the original ONIX message
- report to the original sender a summary of Product records processed and updated into the recipient’s database
- report details of any errors encountered, or any queries about the product data supplied, or
- return to the sender details of proprietary identifiers assigned by the recipient
It can form part of a ‘choreography’ of messages between sender and recipient (say between publisher and data aggregator, or between distributor and retailer). However, it is not expected that it will be used in every ONIX 3.0 data feed, and where it is adopted, implementations might at first use only the simplest functionality (confirmation of receipt).
This initlal version is numbered Release 3.0 only for consistency with the numbering of the main ONIX message specification. The specification also includes a number of annotated sample acknowledgement messages, and the sample files can be downloaded separately here.
An Implementation and Best Practice Guide has been created to accompany the main Specification. These guidelines are intended to set a global benchmark for implementors, to reduce the variation between different interpretations of the standard in different countries, and to ensure that ONIX 3.0 messages are as interoperable as possible on a global scale.
The complete documentation package below includes the Implementation and Best Practice Guide, as well as the enhanced Specification, the initial version of the Acknowledgement Specification, plus the latest version of the codelists, all in HTML format. The Specification and the Guide are extensively linked together for ease of use.
The Guide is updated regularly to incorporate new and improved guidance, usually alongside new issues of the Codelists. Any comments on the guidelines should be forwarded to email@example.com – views are particularly invited from non-English language implementers, and on how well the best practices described meet the needs of different national book and e-book supply chains.
Note the HTML documentation requires a modern browser such as Chrome 9 or later, Firefox 4 or later (for versions prior to v38, the HTML Ruby add-on is required), Safari 5.1 or later, Internet Explorer 9 or later, or Edge 20 or later. Earlier browsers, including Internet Explorer 8, Firefox 3.x, Safari 5.0 and older browsers are not recommended.
Three schema definition options are available for ONIX 3.0. The recommended options are the ISO standard RelaxNG (RNG) schema language or the W3C (XSD) schema language, which allow the most effective validity checking. However, a DTD option is also available. All three options support both reference names and short tags for ONIX data elements. Each is downloadable below as a zipped package. All three packages include the latest issue of the codelists, but with a DTD these can be used only to control attribute values, not coded data elements.
- ONIX for Books 3.0.3 XSD Schema + Codelists Issue 35.zip
- ONIX for Books 3.0.3 RNG Schema + Codelists Issue 35.zip
- ONIX for Books 3.0.3 DTD + Codelists Issue 35.zip
- Note some improvements made to the schema files alonside Issue 32
For ONIX 2.1, EDItEUR originally maintained copies of the latest versions of the DTDs and XSD schemas on the website for online lookup as part of the validation of an ONIX message. As part of the planned 'sunset' of ONIX 2.1 at the end of 2014, this online option has now been removed. For ONIX 3.0, an online option has never been offered, partly because of the greater variety of schema options which are now available, partly to avoid adding an extra dependency into validating applications, and partly because of the traffic loads which it would place on the website. For validation purposes, you should download whichever latest version of the schema option which you prefer, and store it locally. This means validations are much faster and potentially more reliable. EDItEUR strongly recommends validation of ONIX messages using the XSD or RNG schemas (the DTD can be used for validation, but XSD and RNG are preferred. The DTD intended primarily for use with various XML tools such as the tagname converver below). For more detail, please see the XML technical notes which are part of the Release 3.0 documentation packages above.
Schema files (DTD, XSD and RNG) are also available for the initial release of the ONIX Acknowledgement message. This single zip file contains all versions, plus compatible codelist files.
A preliminary work-in-progress version of an enhanced Schematron that checks aspects of the ONIX message format that cannot be validated via conventional XSD or RNG schemas can be downloaded here. This covers ONIX 3.0 using either Reference or Short tags. At present it is of interest to ONIX developers only, and is not complete, but will be progressively refined over the next few months. Feedback from developers who are able to test is particularly appreciated.
The ONIX for Books Release 3.0 Tagname converter is an XSLT script which enables ONIX reference names to be translated into short tags, and vice versa. The XSLT script and instructions for its use are available here. This script can only be used with ONIX files conforming to Release 3.0.
The Large file splitter allows single large ONIX files – which may contain thousands or tens of thousands of Product records – to be broken down into multiple smaller files. This can provide a simple way of avoiding Out of memory errors when processing large volumes of ONIX data. The XSLT script and instructions for use are available here. This XSLT works with any version of ONIX 2.1 or 3.0.
The latest Issue 33 of the ONIX Books Codelists includes all of the lists that are required for ONIX 3.0 and the new ONIX Acknowledgement message. Separate PDF and HTML documents provide an eye-readable list of all codes, old and new, which are used in ONIX 3.0. You can also download a notice which details the changes made since Issue 32. Previous change notices and the latest codelists in other file formats (including various machine-readable formats) can be downloaded from the Codelists page of the website.
- ONIX_Code_Lists_Issue_35_Changes (PDF)
- ONIX_Code_Lists_Issue_35 (HTML)
- ONIX_Code_Lists_Issue_35 (PDF)
These additional documents provide more detailed guidance on how to use ONIX 3.0 than it is possible to include in a formal specification:
How to describe sets and series in ONIX 3.0
ONIX 3.0 offers a new, better and more flexible way to describe sets and series. These guidelines also include worked examples of different use cases.
How to describe digital products in ONIX 3.0
The growing variety of ways in which e-books and other digital products are now formatted, packaged and distributed means that their description is necessarily something of a moving target. The guidelines and examples provided here are in some respects provisional, and we will very much appreciate comments, either on the ONIX_implement listserv or through the "Contact us" facility on the website (towards the bottom of the page). We expect to extend and improve these guidelines from time to time.
How to send block updates in ONIX 3.0
The new ‘block’ structure in ONIX 3.0 allows updates to individual blocks to be sent without sending complete replacement records. New records, complete replacement records and block updates can in principle be freely mixed in a single ONIX message. These guidelines provide details of notification type codes and business rules for ONIX 3.0 block updates.
How to specify different terms of supply in different territories
These guidelines, which are applicable to ONIX 3.0, give details of how to specify agency terms in an ONIX message, using new code values added in March 2010. They will also be useful to senders who need to specify different terms in different supply territories even if they are not adopting an agency model.
Pour les utilisateurs des pays francophones, il existe une traduction en français des ONIX Version 3.0, réalisée avec permission sous le contrôle du groupe ONIX France et avec le soutien du Cercle de la Librairie (Paris), disponible sur le site:
Notez que cela n'inclut pas les dernières modifications qui ont été faites en Octobre 2010 ou Janvier 2012.
Documentation in Spanish
A complete translation of the ONIX 3.0.3 specification and up-to-date codelists is available from www.dilve.es, translation by Federación de Gremios de Editores de España.
Documentation in German
An initial ‘best practice’ document for the German-speaking market.
Documentation in Arabic
An Arabic version of the main parts of the ONIX 3.0 Specification translated with permission by El Kotob. It is available from http://maeyeer.elkotob.com/onix.shtml
Documentation in Portuguese (partial)
For use in Lusophone countries, a translation of the ONIX 3.0.2 Specification and key codelists in Brazilian Portuguese, translated with permission by Bibliomundi. Note that it is not complete – only those parts most relevant for e-book description and trading are included.
Other best practice documentation
BISG / BookNet Canada Best Practices for Product Metadata (revised June 2015), covers ONIX 3.0 and 2.1 usage with specific reference to the United States and Canada)