BibJSON

BibJSON is a simple description of how to represent bibliographic metadata in the now common JSON notation.

THE BIBJSON CONVENTION AND DETAILED DESCRIPTIONS ARE NOW AVAILABLE AT http://bibjson.org.

The back of the t-shirt description:

  • A JSON object is an unordered list of key-value pairs.
  • A BibJSON record is a bibliographic record as a JSON object.
  • A BibJSON collection is a list of BibJSON records, identified in a JSON object by the “records” key.
  • Collection metadata, if any, is an object identified by the “metadata” key, and SHOULD be the FIRST object in a BibJSON collection.
  • Any keys can be used in BibJSON, but the defaults are as per bibtex.
  • Namespaces can be listed in the metadata and used to prefix record keys.
  • Records are records are records – whether book, article, journal, author; identify the type of record using the “type” key. Defaults are as per bibtex “bibtype”.
  • Every record in a collection should have an identifier that is unique within the collection. This is called the citekey.

Guiding principles:

  1. BibJSON must be easily comprehensible to non-domain experts wherever possible. This means using a clear and simple markup and the best and most appropriate vocabularies.
  2. BibJSON should be as flat as possible. While deep nesting of objects would be allowed, we should strive to minimise this in pursuit of (1).
  3. BibJSON’s core vocabulary should be as small as possible. In the first instance this may be BibTex with additional functional keys. BibJSON must not become a large vocabulary of native terms.
  4. BibJSON should support extension using standard and simple means. This means allowing the use of common vocabularies and supporting communities of practice.
  5. It should be possible to process BibJSON with existing tools or be simple to write processing systems. We expect that bibliography producers could emit conformant BibJSON as an output.
  6. BibJSON should interoperate easily with HTML5, and community approaches such as ScholarlyHTML.