I · 03

OpenURL 0.1 vs 1.0

Two versions remain in use: the original 0.1 syntax, narrow and citation-centric, and the 1.0 framework codified by Z39.88-2004.

The version of OpenURL in widest production use today is 1.0, defined by ANSI/NISO Z39.88-2004. An earlier, informal version — generally called 0.1 — predates the standard and remains in production at many resolvers, alongside or behind a 1.0 endpoint. Most link-resolver implementations accept both forms.

OpenURL 0.1

OpenURL 0.1 was the form put forward as an informal specification in 2000 by Herbert Van de Sompel and colleagues, drawing on the prototype developed at Ghent University as SFX. It was tightly bound to scholarly bibliographic citations and used a flat key/value scheme without entity prefixes or a format-identifier mechanism.

A 0.1 OpenURL describing a journal article looks like this:

https://resolver.example.edu/openurl?
sid=example:database
&genre=article
&atitle=Can+Quantum-Mechanical+Description+of+Physical+Reality+Be+Considered+Complete%3F
&jtitle=Physical+Review
&aulast=Einstein
&date=1935
&volume=47
&issue=10
&spage=777
&id=doi:10.1103/PhysRev.47.777

Notable features of the 0.1 syntax:

  • Descriptors have no entity prefix. atitle is the article title; in 1.0 it would be rft.atitle.
  • Identifiers are carried in a single id parameter, with a colon-delimited convention such as doi:, pmid:, isbn:.
  • The originating database is named in sid (source identifier).
  • There is no ctx_ver parameter; the absence of one is itself the signal that the request is 0.1.
  • The set of valid descriptors is fixed by convention. There is no Registry, no format identifier, and no support for resource types beyond bibliographic citations.

OpenURL 1.0 (Z39.88-2004)

OpenURL 1.0 generalises the same idea into a framework. The same article in 1.0 KEV form is:

https://resolver.example.edu/openurl?
ctx_ver=Z39.88-2004
&rft_val_fmt=info:ofi/fmt:kev:mtx:journal
&rfr_id=info:sid/example.com:database
&rft.genre=article
&rft.atitle=Can+Quantum-Mechanical+Description+of+Physical+Reality+Be+Considered+Complete%3F
&rft.jtitle=Physical+Review
&rft.aulast=Einstein
&rft.date=1935
&rft.volume=47
&rft.issue=10
&rft.spage=777
&rft_id=info:doi/10.1103/PhysRev.47.777

The differences from 0.1:

  • ctx_ver=Z39.88-2004 declares the version explicitly.
  • Descriptors are prefixed by the entity to which they belong — rft. for Referent, rfr. for Referrer, and so on. See Entities Overview.
  • The metadata format is named explicitly by rft_val_fmt, with an info:ofi/fmt:kev:mtx:… URI. This allows multiple formats — journal, book, dissertation, patent — to coexist.
  • Identifiers use info: URIs (e.g. info:doi/…) rather than the colon-delimited 0.1 convention.
  • The framework supports several entities beyond the Referent, an XML serialization, and three transport modes.

Detecting version

Implementations distinguish the two versions by the presence or absence of ctx_ver. If ctx_ver=Z39.88-2004 is present the request is 1.0; otherwise it is treated as 0.1. Some resolvers accept hybrid requests carrying both 0.1 and 1.0 parameters, mapping the older keys onto Referent descriptors.

Why 0.1 is still in production

0.1 remains widely emitted because:

  • It is shorter and easier to construct by hand.
  • A large installed base of databases and citation managers was written against 0.1 and never migrated.
  • All major link-resolver products accept it.

New implementations should emit 1.0. Implementations that consume incoming OpenURLs should accept both.

Sources