Font Size:


Code Lists

About ONIX for Books codelists

Codelists – sometimes called controlled vocabularies – are a vital part of ONIX. They form part of the shared semantics of an ONIX message. The codelists contain a list of language-independent (often numerical) code values that are used in ONIX messages, plus for each code there is a short label and sometimes a longer note to define the meaning of the code. In principle, labels and notes may be in any language: although the meaning of almost all codes is originally defined in English, translation of labels and/or notes into another language does not alter the meaning of the code itself. Code BB in list 150 means ‘Hardback book’, but equally it means ‘精装’ (jīngzhuāng shū) and ‚Gebundene ausgabe‘. Thus the meaning of an ONIX message using a particular code value is understandable, whatever the languages used by sender and recipient of the data.

From June 2003, alongside the publication of Release 2.1 of ONIX for Books, the ONIX Codelists are being maintained separately from any of the individual ONIX message formats. A single set of Codelists underpins all ONIX for Books and ONIX for Serials message formats. Some lists may be used in several, or all, of the formats (e.g. language and country codes). Some may be used in only one format. They are all maintained as part of a single set of codelists in which each list has a unique number. (The list number carries no significance: it is simply a ‘dumb’ reference number.)

To maintain backwards compatibility in respect of code values as well as message formats, code values, once published, are never deleted or substantively redefined. They may, however, be marked as ‘deprecated’, and replaced by new values; and their definitions may sometimes be revised to clarify the intended meaning or usage.

Issues of the ONIX for Books Codelists are independent of the publication of new releases of the Product Information message formats. Codelist issues are numbered sequentially 1, 2, 3 etc. New issues of the ONIX Books codelists historically appeared at intervals of between six months and one year, but since 2012 this increased to a regular quarterly cycle. As a consequence, each update tends to introduce fewer new codes. Very occasionally, it is also possible that urgently-needed additions to a code list may be published without a full new issue.

Certain codelists that are not used in currently-supported message specifications may be removed from new Issues of the codelists. Of course that message specification may still be used, with an older Issue of the codelists.

Code values are not included as an integral part of the format specifications. Instead, each specification of a coded data element includes a hyperlink to the relevant code list, and a set of HTML files carrying the latest issue of the code lists is part of the specification package. In the linked HTML files, lists and individual codes which are new are highlighted in red, and codes where either description or notes have been revised or clarified in the latest issue (this includes occasional codes whose status has been changed from active to ‘deprecated’) are highlighted in blue.

top of page

Codelists Issue 36 for Release 2.1

Codelist Issue 36 is the latest version of the codelists that is usable with ONIX 2.1. Issue 36 can be downloaded from the Archived Previous Releases page.

From Issue 37, codelists for use only with Release 2.1 are no longer included in new Issues following the sunset of support for that version of the ONIX for Books standard at the end of 2014, the expiry of a one year period of ‘twilight’ support and a further one year period where the codelists were ‘frozen’ but included in new codelist Issues.

Codelists Issue 37 for Release 3.0

Codelists Issue 37 is for use with Release 3.0 of ONIX for Books.

From Issue 37 in April 2017, codelists for use only with Release 2.1 are no longer included in new Issues. Lists 6, 7, 8, 10, 11, 26, 33, 35–40, 47, 52, 54, 56, 63, 75, 78, 94. 95, 101 have been removed (though of course they are still available in Issue 36 and earlier).

Documents listing changes made between one issue and the next list all new codes plus all existing codes where the description has been clarified, and clearly mark which lists are applicable to which release. The codelist files supplied in CSV, XML and other formats for loading into local systems, and the set of code lists in HTML format (see below), include all codes for the complete set of lists for all currently-supported releases: refer to the ONIX 3.0 Specification documents to ascertain which lists can be used with which release.

You can download three documents which detail all applicable changes made in Issue 37 and provide an eye-readable list of all codes, old and new, which are used in releases up to and including ONIX 3.0:

You can also download documents that detail changes made in previous updates. These often provide an explanation of why new codes were issued:

top of page

Codelists in other languages

The code lists are also available in Italian and French:

top of page

Code list files for loading into local systems: CSV, TXT, XSD, JSON and XML

Complete copies of the current codelist files can be downloaded either in comma-delimited (CSV), tab-delimited (TXT), DTD, XSD, JSON or XML format.

The DTD, XSD and RNG files for use with the ONIX 2.1 DTD and XSD schema files are available from the Archived Previous Releases page. For ONIX 3.0, the packages here are preferred, since any corrections to the main schema files themselves will also be included.

The files that use Windows-1252 character encoding are compatible with most North American and Western European systems using older versions of the Microsoft Windows operating system, and with all web browsers. They can opened directly in Microsoft Excel. The tab-delimited file that uses the Unicode character set and UTF-8 encoding may be more useful with newer versions of Windows and with non-Windows operating systems.

Within the CSV and tab-delimited files, the code lists are presented in numerical order. Each line in the file represents a code list entry. Each line has five fields, in the sequence as given below:

  1. Code list number
  2. Code value
  3. Description – a short text statement of the meaning of the code
  4. Notes – a longer definition where required
  5. Issue number – the code list in which the code was added, or in which the status of the code was most recently changed. The issue number is "0" for all codes issued prior to the present release, and "15" for all codes new (or significantly revised) in the fifteenth release.

Alternative versions using other character sets used by specific computer platforms or operating systems may be available on request – please email us.

The JSON and XML files contain the same information.

For the XML file, an XSD schema is available here. The the top-level tag (root element) is <ONIXCodeTable>. The document contains a sequence of composite elements <CodeList>, each of which contains the data elements <CodeListNumber>, <CodeListDescription> and <IssueNumber>, and a sequence of composite elements <Code>. Each composite element <Code> contains the data elements <CodeNumber> (optional), <CodeValue>, <CodeDescription>, <CodeNotes> and <IssueNumber>.

Here is an XML sample:
<?xml version="1.0" encoding="utf-8"?>
        <CodeListDescription>Notification or update type code</CodeListDescription>
            <CodeDescription>Early notification</CodeDescription>
            <CodeNotes>Use for a complete record issued earlier than approximately six months before publication.</CodeNotes>

and the JSON equivalent:
  "CodeList": [
      "CodeListNumber": "1",
      "CodeListDescription": "Notification or update type code",
      "IssueNumber": "0",
      "Code": [
          "CodeValue": "01",
          "CodeDescription": "Early notification",
          "CodeNotes": "Use for a complete record issued earlier than approximately six months before publication.",
          "IssueNumber": "0"

The content of a list in the XML or JSON format differs in some respects from that of the CSV and TXT formats. In the XML and JSON formats, each list opens with the list number, a description of the list, and an issue number for the list as a whole, which specifies the issue when the list was added or last changed (in addition to the issue number against each individual code value).

Terms & Conditions  |  Privacy Policy  |  Cookie Policy