Font Size:

ONIX

Release 3.0 Downloads

ONIX 3.0 Core documentation

For detailed core documentation, the package below includes an enhanced Product Information Format Specification in PDF format. The document 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 2 (3.0.2), released January 2014. This revision is fully backward-compatible with earlier versions of the 3.0 specification. A summary of the changes between 3.0 and 3.0.1 can be viewed here, and the changes introduced with 3.0.2 here. The specification also includes an annotated sample file, and the file can be downloaded separately here.

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.

Implementation and Best Practice Guide

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, usually alongside new issues of the Codelists. Any comments on the guidelines should be forwarded to graham@editeur.org – 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 (with the HTML Ruby add-on), Safari 5.1 or later, or Internet Explorer 9 or later. Earlier browsers, including Internet Explorer 8, Firefox 3.x, Safari 5.0 and older browsers are not recommended.


Schema definitions

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.

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. 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.

Enhanced schema

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.


ONIX 3.0 Tagname converter and Large file splitter

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.


Codelists for Release 3.0

The latest Issue 28 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 27. 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.


Additional guidelines

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.


Documentation in French

Pour les utilisateurs des pays francophones, il existe une traduction en français des ONIX Version 3.0, réalisée sous le contrôle du groupe ONIX France et avec le soutien du Cercle de la Librairie (Paris), disponible sur le site:

Guide ONIX 3.0 avec Aperçu et Eléments 3.0 (ZIP)

Notez que cela n'inclut pas les dernières modifications qui ont été faites en Octobre 2010 ou Janvier 2012.

Documentation in German

An initial ‘best practice’ document for the German-speaking market.

ONIX 3.0 Best Practices für den deutschsprachigen Raum Februar 2014 (PDF)

Documentation in Arabic

An Arabic version of the main parts of the ONIX 3.0 specification is available from http://maeyeer.elkotob.com/onix.shtml

Other best practice documentation

BISG / BookNet Canada Best Practices for Product Metadata (revised April 2014), covers ONIX 2.1 and 3.0 usage with specific reference to North America)

Terms & Conditions  |  Privacy Policy  |  Cookie Policy