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.
Two versions are in use. OpenURL 0.1 is the informal syntax published by Herbert Van de Sompel, Patrick Hochstenbach and Oren Beit-Arie (dated 16 May 2000). OpenURL 1.0 is the framework standardised as ANSI/NISO Z39.88-2004. Z39.88-2004 itself names the old syntax "NISO OpenURL Version 0.1", and its Inline transport was designed as a gentle migration path from it. Most link resolvers accept both.
OpenURL 0.1
OpenURL 0.1 grew out of the SFX work at Ghent University and was aimed at scholarly bibliographic citations. It uses a flat key/value scheme with no entity prefixes and no format identifiers.
https://resolver.example.edu/openurl?
sid=Example:Database
&genre=article
&atitle=Can+Quantum-Mechanical+Description+of+Physical+Reality+Be+Considered+Complete%3F
&title=Physical+Review
&aulast=Einstein
&date=1935
&volume=47
&issue=10
&spage=777
&id=doi:10.1103/PhysRev.47.777
Features of the 0.1 syntax:
- No entity prefixes.
atitleis the article title; in 1.0 it becomesrft.atitle. - One title key for the container. 0.1 uses
titlefor the journal, book or conference title (andstitlefor the abbreviation).jtitleandbtitleonly exist in 1.0. - Identifiers in
id, asnamespace:value. The 0.1 document defines four global namespaces:doi,pmid,bibcodeandoai. - Source in
sid, asVendorID:DatabaseID(for examplesid=EBSCO:MFA). - Private data in
pid, whose content is defined by the source. Apidrequires asid. - Genres:
journal,book,conference,article,preprint,proceeding,bookitem.
OpenURL 1.0 (Z39.88-2004)
The same article as a 1.0 OpenURL using the Inline transport:
https://resolver.example.edu/openurl?
url_ver=Z39.88-2004
&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
| Purpose | OpenURL 0.1 | OpenURL 1.0 |
|---|---|---|
| Version signal | none | url_ver=Z39.88-2004 (transport), ctx_ver=Z39.88-2004 (ContextObject) |
| Metadata format | implied | rft_val_fmt=info:ofi/fmt:kev:mtx:journal (or book, dissertation, …) |
| Descriptive fields | atitle, title, aulast… | rft.atitle, rft.jtitle, rft.aulast… |
| Identifier | id=doi:10.1103/… | rft_id=info:doi/10.1103/… |
| Source | sid=Vendor:Database | rfr_id=info:sid/domain.com:database |
| Private data | pid=… | rft_dat=… (and rfe_dat, req_dat, …) |
| Additional authors | not defined | rft.au (repeatable) |
| Other entities | none | ReferringEntity, Requester, ServiceType, Resolver, Referrer |
Detecting the version
Resolvers usually treat a request as 1.0 if it contains url_ver=Z39.88-2004 or ctx_ver=Z39.88-2004, or any entity-prefixed key such as rft_val_fmt, and as 0.1 otherwise. The KEV implementation guidelines describe "hybrid" OpenURLs that carry both sets of keys during migration; a resolver that understands 1.0 uses the prefixed keys and can ignore the rest as foreign keys.
Why 0.1 is still around
- It is shorter and easy to build by hand.
- Many databases and citation tools were written against 0.1 and never migrated.
- Resolvers kept accepting it, so there was little pressure to change.
New implementations should emit 1.0. Software that consumes OpenURLs should accept both, including hybrids. The parser on this site recognises both forms.