V · 36
OpenURL Parser
Paste an OpenURL and see it decoded, entity by entity. Everything runs in your browser; nothing is sent to the network.
The parser accepts OpenURL 1.0 (Z39.88-2004), the older 0.1 syntax and hybrids of the two. Paste a full URL, a bare query string, a COinS title value, or a “Context object: ctx_ver=Z39.88-2004&…” string from a catalogue. Pretty-printed input with one pair per line also works. The parser URL-decodes each value, groups keys by transport, administrative data and Entity, names the metadata format, unpacks By-Value url_ctx_val content, and builds a readable citation.
Input
Output
How it works
- Removes a leading “Context object:” label and line breaks, and turns
&into&. If the input starts withscheme://, splits off the base URL at the first?; otherwise the whole input is treated as a query string. - Splits the query string on
&before decoding (so an encoded%26inside a value is safe), then each pair on the first=. - URL-decodes both keys and values, replacing
+with space. - Groups keys into transport (
url_), administrative (ctx_), the six Entities (rft,rfe,req,svc,res,rfr) and other keys (0.1-style or foreign). Repeated keys such asrft.auare all kept. - Detects the version:
url_ver,ctx_veror any Entity-prefixed key means 1.0; only 0.1 keys means 0.1; both means a hybrid. - Names the metadata format (journal, book, dissertation, patent, sch_svc, Dublin Core and the XML formats), links DOIs and PubMed IDs, and assembles a one-line citation.
Privacy
The parser is implemented entirely in client-side JavaScript inlined in this page. No request is made to any server, and no input is stored. You can verify this in your browser's developer tools.