URN Parser
Decompose a URN (urn:NID:NSS) into namespace identifier (NID) and namespace-specific string (NSS). Supports r-component and q-component (RFC 8141).
Formato: urn:NID:NSS[?+r-component][?=q-component][#fragment]
URN: identifying without saying where it is
A URL says where to fetch; a URN says only what the thing is. The difference matters when the identifier must outlive the server: a book's ISBN stays correct after the publisher closes, and that is what the form urn:isbn:0451450523 expresses. The structure is always urn, the namespace identifier and the string specific to it.
RFC 8141, from 2017, added three optional trailing parts, and the page separates them: the r-component, opened by question mark and plus, carrying parameters for the resolver; the q-component, opened by question mark and equals, carrying parameters for the resource; and the fragment, after the hash. None of the three takes part in identification — two URNs differing only in them name the same thing.
The namespace identifier is registered with IANA and the page recognises the common ones: isbn, issn, uuid, oid, ietf, nbn. The name urn is reserved and cannot name a namespace. Worth knowing the practical criticism: a URN identifies but nothing resolves it by default, so without an agreed resolution system it becomes a label — which explains why the DOI, born with its own resolver, won in academia.
Frequently asked questions
What are the rules for the namespace identifier?
Is urn:uuid the same as a bare UUID?
Are URNs still used?
Related Tools
Pix Decoder
Decode Brazilian Pix BR Code (text starting with 0002...) extracting key, amount, beneficiary, city and identifier.
Snowflake ID Parser
Decompose a snowflake (Twitter, Discord) into timestamp, worker ID, datacenter ID and sequence. Shows the human-readable date.
Content-Type Parser
Decompose a Content-Type header into mediatype, charset, boundary and other parameters. Useful when debugging APIs and uploads.
Range Header Parser
Decompose a Range header (bytes=0-499, bytes=-100, etc.) into individual ranges with start, end and size.
UUID Parser
Decompose a UUID into version (1, 3, 4, 5, 6, 7, 8), variant, and when applicable, timestamp and node. Supports UUIDs with or without dashes.
Authorization Header Parser
Identify the scheme (Basic, Bearer, Digest) of an Authorization header and extract the payload, decoding Basic from base64.