Uniform Resource Name

From Wikipedia, the free encyclopedia
Jump to: navigation, search
"URN" redirects here. For other uses, see URN (disambiguation).
This Euler diagram shows that a Uniform Resource Identifier (URI) is either a Uniform Resource Locator (URL), a Uniform Resource Name (URN), or both.

In computing, a Uniform Resource Name (URN) is the historical name for a Uniform Resource Identifier (URI) that uses the urn scheme. A URI is a string of characters used to identify a name of a web resource. Such identification enables interaction with representations of the web resource over a network, typically the World Wide Web, using specific protocols.

Defined in 1997 in RFC 2141, URNs were intended to serve as persistent, location-independent identifiers, allowing the simple mapping of namespaces into a single URN namespace.[1] The existence of such a URI does not imply availability of the identified resource, but such URIs are required to remain globally unique and persistent, even when the resource ceases to exist or becomes unavailable.[2]

Since RFC 3986[2] in 2005, the use of the term has been deprecated in favor of the less-restrictive "URI", a view proposed by a joint working group between the World Wide Web Consortium (W3C) and Internet Engineering Task Force (IETF).[3] Both URNs and Uniform Resource Locators (URLs) are URIs, and a particular URI may be a name as well as a locator at the same time.

URNs were originally intended in the 1990s to be part of a three-part information architecture for the Internet, along with URLs and Uniform Resource Characteristics (URCs), a metadata framework. However, URCs never progressed past the conceptual stage,[3] and other technologies such as the Resource Description Framework later took their place.

Syntax[edit]

The syntax of a URN is represented in Backus-Naur form as:[1]

<URN> ::= "urn:" <NID> ":" <NSS>

This renders as:

urn:<NID>:<NSS>

The leading urn: sequence is case-insensitive. <NID> is the namespace identifier, which determines the syntactic interpretation of <NSS>, the namespace-specific string. The functional requirements for Uniform Resource Names are described in RFC 1737.[4]

Namespaces[edit]

In order to ensure the global uniqueness of URN namespaces, their identifiers (NIDs) are required to be registered with the IANA. Registered namespaces may be "formal" or "informal". An exception to the registration requirement is made for "experimental namespaces".[5]

Formal[edit]

Formal namespaces are those where some Internet users are expected to benefit from their publication,[5] and are subject to several restrictions. They must:

  • not be an already-registered NID
  • not start with x- (see "Experimental namespaces", below)
  • not start with urn-
  • not start with XY-, where XY is any combination of two ASCII letters
  • be more than two letters long.

Informal[edit]

Informal namespaces are registered with IANA and assigned a number sequence (chosen by IANA on a first-come-first-served basis) as an identifier,[5] in the format

"urn-" <number>

Informal namespaces are fully fledged URN namespaces and can be registered in global registration services.[5]

Experimental[edit]

Experimental namespaces take the form

"X-" <NID>

Namespaces of this form are intended only for use within internal or limited experimental contexts, and are not required or expected to be globally unique.[5]

RFC 6648 deprecates the use of "X-" notation for new ID names, but makes no recommendation on substituting existing "X-" names, and does not override existing specifications that require the use of "X-". [6]

Examples[edit]

URN corresponds to
urn:isbn:0451450523 The 1968 book The Last Unicorn, identified by its book number.
urn:isan:0000-0000-9E59-0000-O-0000-0000-2 The 2002 film Spider-Man, identified by its audiovisual number.
urn:ISSN:0167-6423 The scientific journal Science of Computer Programming, identified by its serial number.
urn:ietf:rfc:2648 The IETF's RFC 2648.
urn:mpeg:mpeg7:schema:2001 The default namespace rules for MPEG-7 video metadata.
urn:oid:2.16.840 The OID for the United States.
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66 A version 1 UUID.
urn:nbn:de:bvb:19-146642 A National Bibliography Number for a document, indicating country (de), regional network (bvb = Bibliotheksverbund Bayern), library number (19) and document number.
urn:lex:eu:council:directive:2010-03-09;2010-19-UE A directive of the European Union, using the Lex URN namespace.

Resolvers[edit]

A URN resolver is responsible for initiating and sequencing the queries that ultimately lead to a full resolution (translation) of a URN name or a "resolution request", e.g., a request for translation of a URN name into a URL.

Absence of DOI namespace[edit]

The maintainers of the digital object identifier (DOI) system have deliberately not registered a DOI namespace for URNs, stating that:

URN architecture assumes a DNS-based Resolution Discovery Service (RDS) to find the service appropriate to the given URN scheme. However no such widely deployed RDS schemes currently exist.... DOI is not registered as a URN namespace, despite fulfilling all the functional requirements, since URN registration appears to offer no advantage to the DOI System. It requires an additional layer of administration for defining DOI as a URN namespace (the string urn:doi:10.1000/1 rather than the simpler doi:10.1000/1) and an additional step of unnecessary redirection to access the resolution service, already achieved through either http proxy or native resolution. If RDS mechanisms supporting URN specifications become widely available, DOI will be registered as a URN.
— International DOI Foundation, Factsheet: DOI System and Internet Identifier Specifications[7]

See also[edit]

References[edit]

Citations[edit]

External links[edit]