V · 38

OpenURL Validator

Paste an OpenURL and check it against the conformance rules of Z39.88-2004. Errors, warnings, and informational facts are reported separately.

The validator checks an OpenURL or ContextObject string against the rules of Z39.88-2004 and the registered metadata formats, as an SAP1 link resolver would see them. It runs entirely in your browser. It cannot tell you whether a particular resolver will find full text (that depends on its knowledge base), but it catches the structural and data errors that most often break links.

Input

Report

Awaiting input.

What the validator checks

  • Version keys. url_ver (required by the transports) and ctx_ver (conventional) must equal Z39.88-2004; a warning is given if they are missing. Input with only 0.1 keys is checked against the OpenURL 0.1 rules instead.
  • Transport. Inline, By-Value (url_ctx_val, which is unpacked and checked) and By-Reference (url_ctx_ref).
  • Referent. At least one rft_ key; rft.* keys require rft_val_fmt; rft_ref and rft_ref_fmt go together; single-occurrence keys are not repeated.
  • Metadata format. The _val_fmt must be a registered format; for journal, book, dissertation, patent, sch_svc and Dublin Core, every key is checked against the Registry matrix (e.g. rft.patent_number is flagged; the key is rft.number).
  • URL encoding. Stray % sequences that do not form valid percent-encodings are flagged.
  • Identifiers. _id values must be URIs; DOIs are sanity-checked; doi: and info:isbn/ forms are flagged. ISBN and ISSN check digits are verified.
  • Referrer. rfr_id in the info:sid/domain.name:database form. Absence is a warning, not an error.
  • Values. Genre against the format's vocabulary, dates in W3CDTF form (YYYY, YYYY-MM, YYYY-MM-DD), sch_svc values yes/no, raw spaces and accidental double encoding.