Uniform Resource Names (URNs)
RFC 8141
Document | Type | RFC - Proposed Standard (April 2017; No errata) | |
---|---|---|---|
Authors | Peter Saint-Andre , John Klensin | ||
Last updated | 2017-04-27 | ||
Replaces | draft-saintandre-urnbis-2141bis, draft-ietf-urnbis-rfc3406bis-urn-ns-reg, draft-ah-rfc2141bis-urn | ||
Stream | Internent Engineering Task Force (IETF) | ||
Formats | plain text html pdf htmlized (tools) htmlized bibtex | ||
Reviews | |||
Stream | WG state | Submitted to IESG for Publication | |
Document shepherd | Barry Leiba | ||
Shepherd write-up | Show (last changed 2017-02-02) | ||
IESG | IESG state | RFC 8141 (Proposed Standard) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Yes | ||
Telechat date | |||
Responsible AD | Alexey Melnikov | ||
Send notices to | "Barry Leiba" <barryleiba@computer.org> | ||
IANA | IANA review state | Version Changed - Review Needed | |
IANA action state | RFC-Ed-Ack |
Internet Engineering Task Force (IETF) P. Saint-Andre Request for Comments: 8141 Filament Obsoletes: 2141, 3406 J. Klensin Category: Standards Track April 2017 ISSN: 2070-1721 Uniform Resource Names (URNs) Abstract A Uniform Resource Name (URN) is a Uniform Resource Identifier (URI) that is assigned under the "urn" URI scheme and a particular URN namespace, with the intent that the URN will be a persistent, location-independent resource identifier. With regard to URN syntax, this document defines the canonical syntax for URNs (in a way that is consistent with URI syntax), specifies methods for determining URN- equivalence, and discusses URI conformance. With regard to URN namespaces, this document specifies a method for defining a URN namespace and associating it with a namespace identifier, and it describes procedures for registering namespace identifiers with the Internet Assigned Numbers Authority (IANA). This document obsoletes both RFCs 2141 and 3406. Status of This Memo This is an Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc8141. Saint-Andre & Klensin Standards Track [Page 1] RFC 8141 URNs April 2017 Copyright Notice Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Saint-Andre & Klensin Standards Track [Page 2] RFC 8141 URNs April 2017 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 5 1.2. Design Trade-offs . . . . . . . . . . . . . . . . . . . . 6 1.2.1. Resolution . . . . . . . . . . . . . . . . . . . . . 8 1.2.2. Character Sets and Encodings . . . . . . . . . . . . 9 2. URN Syntax . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1. Namespace Identifier (NID) . . . . . . . . . . . . . . . 10 2.2. Namespace Specific String (NSS) . . . . . . . . . . . . . 10 2.3. Optional Components . . . . . . . . . . . . . . . . . . . 12 2.3.1. r-component . . . . . . . . . . . . . . . . . . . . . 12 2.3.2. q-component . . . . . . . . . . . . . . . . . . . . . 13 2.3.3. f-component . . . . . . . . . . . . . . . . . . . . . 15 3. URN-Equivalence . . . . . . . . . . . . . . . . . . . . . . . 16 3.1. Procedure . . . . . . . . . . . . . . . . . . . . . . . . 16 3.2. Examples . . . . . . . . . . . . . . . . . . . . . . . . 17 4. URI Conformance . . . . . . . . . . . . . . . . . . . . . . . 18 4.1. Use in URI Protocol Slots . . . . . . . . . . . . . . . . 18 4.2. Parsing . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.3. URNs and Relative References . . . . . . . . . . . . . . 19 4.4. Transport and Display . . . . . . . . . . . . . . . . . . 19 4.5. URI Design and Ownership . . . . . . . . . . . . . . . . 20 5. URN Namespaces . . . . . . . . . . . . . . . . . . . . . . . 20 5.1. Formal URN Namespaces . . . . . . . . . . . . . . . . . . 22 5.2. Informal URN Namespaces . . . . . . . . . . . . . . . . . 23 6. Defining and Registering a URN Namespace . . . . . . . . . . 24 6.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . 24 6.2. Registration Policy and Process: Community Registrations 25 6.3. Registration Policy and Process: Fast Track for Standards Development Organizations, Scientific Societies, and Similar Bodies . . . . . . . . . . . . . . . . . . . . . 26 6.4. Completing the Template . . . . . . . . . . . . . . . . . 27Show full document text