Schemas / Book

rig.book.publication

v0.31.0 · draft 7 fields 0 required

Fields

FieldTypeMeaning
publisher entity optional Publisher organisation
publishedDate string optional Publication day or year (YYYY / YYYY-MM / YYYY-MM-DD)
language string optional ISO 639-1 or 639-2/T, lowercase
pageCount uint optional Extent in pages
productForm enumhardcover · paperback · ebook · audiobook · other optional hardcover / paperback / ebook / audiobook / other
cityOfPublication string optional City as printed
copyrightYear integer1000 – 9999 optional Copyright year of this product

Publishing detail of a book product. Format when present.

Field meanings follow ONIX for Books PublishingDetail and Language. This schema is those publishing elements - not an ONIX message.

All fields optional. Emit what the source has. An empty component is invalid - attach at least one field.

Name the publisher with rig.meta.named on that entity. Legal identifiers are rig.organisation.identity. Do not put a publisher name string here.

An ebook or PDF file is rig.media.asset_ref (kind document) on a related entity - not a path on this schema. Holder, licence, and credit line are rig.rights.statement. copyrightYear here is the ONIX product year only - do not copy it onto the rights record.

JSON Schema

Resolves at https://rig.works/schemas/rig.book.publication.schema.jsonraw file.

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.book.publication.schema.json",
  "title": "rig.book.publication",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "publisher": {
      "$ref": "./_defs.schema.json#/$defs/entity"
    },
    "publishedDate": {
      "type": "string",
      "pattern": "^[0-9]{4}(-[0-9]{2}(-[0-9]{2})?)?$",
      "description": "ISO 8601 date or year (ONIX PublishingDate)."
    },
    "language": {
      "type": "string",
      "pattern": "^[a-z]{2,3}$",
      "description": "ISO 639-1 or 639-2/T (ONIX Language)."
    },
    "pageCount": {
      "$ref": "./_defs.schema.json#/$defs/uint"
    },
    "productForm": {
      "type": "string",
      "enum": [
        "hardcover",
        "paperback",
        "ebook",
        "audiobook",
        "other"
      ]
    },
    "cityOfPublication": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "copyrightYear": {
      "type": "integer",
      "minimum": 1000,
      "maximum": 9999
    }
  },
  "description": "Publishing detail. Field meanings follow ONIX PublishingDetail. Publisher is an organisation entity.",
  "minProperties": 1
}

Seen in

book-isbn.json · commerce-offer.json