draft-ietf-urnbis-rfc3406bis-urn-ns-reg-00.txt   draft-ietf-urnbis-rfc3406bis-urn-ns-reg-01.txt 
IETF URNbis WG A. Hoenes IETF URNbis WG A. Hoenes
Internet-Draft TR-Sys Internet-Draft TR-Sys
Obsoletes: 3406 (if approved) December 17, 2010 Obsoletes: 3406 (if approved) October 31, 2011
Intended status: BCP Intended status: BCP
Expires: June 20, 2011 Expires: May 3, 2012
Uniform Resource Name (URN) Namespace Definition Mechanisms Uniform Resource Name (URN) Namespace Definition Mechanisms
draft-ietf-urnbis-rfc3406bis-urn-ns-reg-00 draft-ietf-urnbis-rfc3406bis-urn-ns-reg-01
Abstract Abstract
Uniform Resource Names (URNs) are intended to serve as persistent, Uniform Resource Names (URNs) are intended to serve as persistent,
location-independent, resource identifiers. To structure and location-independent, resource identifiers. To structure and
organize their usage, the URN syntax specifies a hierarchy that organize their usage, the URN syntax specifies a hierarchy that
horizontally divides the set of possible URNs into "URN Namespaces" divides the set of possible URNs into "URN Namespaces" that can be
that can be individually defined and managed. URN Namespaces in individually defined and managed. URN Namespaces in particular serve
particular serve to map existing identifier systems into the URN to map existing identifier systems into the URN system and thereby
system and thereby make available generic, network-based resolution make available generic, network-based resolution services for the
services for the identified documents, artifacts, and other objects identified documents, artifacts, and other objects (and their
(and their metadata). metadata).
To actually leverage such synergetic advantage, URN namespaces need To actually leverage such synergetic advantage, URN Namespaces need
to be specified in a comparable manner, and their Namespace to be specified in a comparable manner, and their Namespace
Identifiers (NIDs) need to be registered with IANA, so that naming Identifiers (NIDs) need to be registered with IANA, so that naming
conflicts are avoided and implementers of services can follow a conflicts are avoided and implementers of services can follow a
structured approach in support of various namespaces, guided by the structured approach in support of various namespaces, guided by the
registry to the related documents and the particularities of specific registry to the related documents and the particularities of specific
namespaces, as described in these namespace registration documents. namespaces, as described in these namespace registration documents.
This document serves as a guidleline for authors of URN Namespace This document serves as a guideline for authors of URN Namespace
definition and registration documents. It describes the essential definition and registration documents. It describes the essential
content of such documents and how they shall be structured to allow content of such documents and how they shall be structured to allow
readers familar with the scheme to quickly assess the properties of a readers familar with the scheme to quickly assess the properties of a
specific URN Namespace. Further, this RFC describes the process to specific URN Namespace. Further, this RFC describes the process to
be followed to get a URN Namespace registered with IANA. be followed to get a URN Namespace registered with IANA.
This document is a companion document to the revised URN Syntax This document is a companion document to the revised URN Syntax
specification, RFC 2141bis; it supersedes and replaces RFC 3406. specification, RFC 2141bis; it supersedes and replaces RFC 3406.
Discussion Discussion
This draft version has been obtained by importing the text from RFC
3406 into modern tools and making a first round of updating steps.
It is an initial chartered work item of the URNBIS WG.
Discussion of this memo utilizes the urn@ietf.org mailing list. Discussion of this memo utilizes the urn@ietf.org mailing list.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on June 20, 2011. This Internet-Draft will expire on May 3, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2011 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 3, line 13 skipping to change at page 3, line 13
than English. than English.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1. Requirement Language . . . . . . . . . . . . . . . . . . . 5 1.1. Requirement Language . . . . . . . . . . . . . . . . . . . 5
2. What is a URN Namespace? . . . . . . . . . . . . . . . . . . . 5 2. What is a URN Namespace? . . . . . . . . . . . . . . . . . . . 5
3. URN Namespace (Registration) Types . . . . . . . . . . . . . . 6 3. URN Namespace (Registration) Types . . . . . . . . . . . . . . 6
3.1. Experimental Namespaces . . . . . . . . . . . . . . . . . 6 3.1. Experimental Namespaces . . . . . . . . . . . . . . . . . 6
3.2. Informal Namespaces . . . . . . . . . . . . . . . . . . . 6 3.2. Informal Namespaces . . . . . . . . . . . . . . . . . . . 6
3.3. Formal Namespaces . . . . . . . . . . . . . . . . . . . . 6 3.3. Formal Namespaces . . . . . . . . . . . . . . . . . . . . 7
4. URN Namespace Registry: Processes for Registration and 4. URN Namespace Registry: Processes for Registration and
Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.1. Experimental Namespaces: No Registration . . . . . . . . . 9 4.1. Experimental Namespaces: No Registration . . . . . . . . . 9
4.2. Informal Namespaces . . . . . . . . . . . . . . . . . . . 9 4.2. Informal Namespaces . . . . . . . . . . . . . . . . . . . 9
4.3. Formal Namespaces . . . . . . . . . . . . . . . . . . . . 10 4.3. Formal Namespaces . . . . . . . . . . . . . . . . . . . . 10
4.4. Registration Documents . . . . . . . . . . . . . . . . . . 10 4.4. Registration Documents . . . . . . . . . . . . . . . . . . 11
4.4.1. Namespace Considerations in Registration Documents . . 11 4.4.1. Namespace Considerations in Registration Documents . . 11
4.4.2. Community Considerations in Registration Documents . . 11 4.4.2. Community Considerations in Registration Documents . . 12
4.4.3. Security Considerations in Registration Documents . . 12 4.4.3. Security Considerations in Registration Documents . . 12
4.4.4. IANA Considerations in Registration Documents . . . . 12 4.4.4. IANA Considerations in Registration Documents . . . . 13
5. Security Considerations . . . . . . . . . . . . . . . . . . . 13 5. Security Considerations . . . . . . . . . . . . . . . . . . . 14
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 15
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
8.1. Normative References . . . . . . . . . . . . . . . . . . . 14 8.1. Normative References . . . . . . . . . . . . . . . . . . . 15
8.2. Informative References . . . . . . . . . . . . . . . . . . 15 8.2. Informative References . . . . . . . . . . . . . . . . . . 15
Appendix A. URN Namespace Definition Template . . . . . . . . . . 16 Appendix A. URN Namespace Definition Template . . . . . . . . . . 16
Appendix B. Illustration . . . . . . . . . . . . . . . . . . . . 21 Appendix B. Illustration . . . . . . . . . . . . . . . . . . . . 22
B.1. Example Template . . . . . . . . . . . . . . . . . . . . . 21 B.1. Example Template . . . . . . . . . . . . . . . . . . . . . 22
B.2. Registration steps in practice . . . . . . . . . . . . . . 23 B.2. Registration steps in practice . . . . . . . . . . . . . . 24
Appendix C. Changes from RFC 3406 . . . . . . . . . . . . . . . . 25 Appendix C. Changes from RFC 3406 . . . . . . . . . . . . . . . . 25
C.1. Essential Changes since RFC 3406 . . . . . . . . . . . . . 25 C.1. Essential Changes since RFC 3406 . . . . . . . . . . . . . 25
C.2. Changes from RFC 3406 to URNbis WG Draft -00 . . . . . . . 25 C.2. Changes from RFC 3406 to URNbis WG Draft -00 . . . . . . . 25
Appendix D. Open Issues . . . . . . . . . . . . . . . . . . . . . 27 Appendix D. Open Issues . . . . . . . . . . . . . . . . . . . . . 28
1. Introduction 1. Introduction
Uniform Resource Names (URNs) are resource identifiers with the Uniform Resource Names (URNs) are resource identifiers with the
specific requirements for enabling location-independent specific requirements for enabling location-independent
identification of a resource, as well as longevity of reference. identification of a resource, as well as longevity of reference.
URNs are part of the larger Uniform Resource Identifier (URI) family URNs are part of the larger Uniform Resource Identifier (URI) family
(see the joint W3C/IETF memorandum, RFC 3305 [RFC3305], and the IETF (see the joint W3C/IETF memorandum, RFC 3305 [RFC3305], and the IETF
STD 66, RFC 3986 [RFC3986]) with the specific goal of providing STD 66, RFC 3986 [RFC3986]) with the specific goal of providing
persistent naming of resources. persistent naming of resources.
There are two assumptions that are key to this document: There are two assumptions that are key to this document:
Assumption #1: Assignment of a URN is a managed process. Assumption #1: Assignment of a URN is a managed process.
I.e., not all strings that conform to URN syntax are necessarily I.e., not all strings that conform to URN syntax are necessarily
valid URNs. A URN is assigned according to the rules of a valid URNs. A URN is assigned according to the rules of a
particular namespace (in terms of syntax, semantics, and process). particular namespace (in terms of syntax, semantics, and process).
Assumption #2: The space of URN namespaces is managed. Assumption #2: The space of URN Namespaces is managed.
I.e., not all syntactically correct URN namespaces (per the URN I.e., not all syntactically correct URN Namespaces (per the URN
syntax definition) are valid URN namespaces. A URN namespace must syntax definition) are valid URN Namespaces. A URN Namespace must
have a recognized definition in order to be valid. have a recognized definition in order to be valid.
The purpose of this document is to outline a mechanism and provide a The purpose of this document is to outline a mechanism and provide a
template for explicit namespace definition, as well as provide the template for explicit namespace definition, as well as provide the
mechanism for associating an identifier (called a "Namespace ID", or mechanism for associating an identifier (called a "Namespace ID", or
NID), which is registered with the Internet Assigned Numbers NID), which is registered with the Internet Assigned Numbers
Authority (IANA) [IANA] in the URN Namespaces registry maintained at Authority (IANA) [IANA] in the URN Namespaces registry maintained at
[IANA-URN]. [IANA-URN].
The URN Namespace definition and registration mechanisms originally The URN Namespace definition and registration mechanisms originally
skipping to change at page 4, line 50 skipping to change at page 4, line 50
time of this writing, BCP 26, RFC 5226 [RFC5226] is the normative time of this writing, BCP 26, RFC 5226 [RFC5226] is the normative
document. This document is a revision of RFC 3406 based on the document. This document is a revision of RFC 3406 based on the
revised URN Syntax specification RFC 2141bis revised URN Syntax specification RFC 2141bis
[I-D.ietf-urnbis-rfc2141bis-urn] and RFC 5226. [I-D.ietf-urnbis-rfc2141bis-urn] and RFC 5226.
The reader is referred to Section 1.1 of RFC 2141bis The reader is referred to Section 1.1 of RFC 2141bis
[I-D.ietf-urnbis-rfc2141bis-urn] for a more detailed synopsis of the [I-D.ietf-urnbis-rfc2141bis-urn] for a more detailed synopsis of the
history of documents fundamental for URNs. history of documents fundamental for URNs.
Note that this document restricts itself to the description of Note that this document restricts itself to the description of
processes for the creation of URN namespaces. If "resolution" of any processes for the creation of URN Namespaces. If generic
so-created URN identifiers is desired, a separate process of "resolution" of any so-created URN identifiers is desired, a separate
registration in a global NID directory, such as that provided by the process of registration in a global NID directory, such as that
DDDS system [RFC3401], is necessary. See [RFC3405] for information provided by the DDDS system [RFC3401], is necessary. See [RFC3405]
on obtaining registration in the DDDS global NID directory. for information on obtaining registration in the DDDS global NID
directory.
1.1. Requirement Language 1.1. Requirement Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
In this document, these key words describe requirements for the In this document, these key words describe requirements for the
process to be followed and the content to be provided in namespace process to be followed and the content to be provided in namespace
definition documents and registration templates. definition documents and registration templates.
For the purpose of this document, its subject is spelled "URN
Namespace" (in headline case), whereas in other context, "namespace"
is spelled in lowercase, e.g. to designate a (standard or non-
standard) identifier system on which a URN Namespace is based.
2. What is a URN Namespace? 2. What is a URN Namespace?
For the purposes of URNs, a "namespace" is a collection of uniquely- For the purposes of URNs, a "namespace" is a collection of uniquely-
assigned identifiers. That is, the identifiers are not ever assigned assigned identifiers. That is, the identifiers are not ever assigned
to more than 1 resource, nor are they ever re-assigned to a different to more than 1 resource, nor are they ever re-assigned to a different
resource. A single resource, however, may have more than one URN resource. A single resource, however, may have more than one URN
assigned to it for different purposes. A URN namespace itself has an assigned to it for different purposes. Such namespace might be
identifier in order to: defined by some pre-established (standard or non-standard) identifier
system that can be made "network-actionable" by embedding it into the
URN framework using a specific URN Namespace. A URN Namespace itself
has an identifier in order to:
- ensure global uniqueness of URNs, - ensure global uniqueness of URNs,
- (where desired) provide a cue for the structure of the identifier. - (where desired) provide a cue for the structure of the identifier.
For example, many identifier systems use strings of numbers as For example, many identifier systems use strings of numbers as
identifiers (e.g., ISBN, ISSN, phone numbers). It is conceivable identifiers (e.g., ISBN, ISSN, phone numbers). It is conceivable
that there might be some numbers that are valid identifiers in two that there might be some numbers that are valid identifiers in two
different established identifier systems. Using different different established identifier systems. Using different
designators for the two collections ensures that no two URNs will be designators for the two collections ensures that no two URNs will be
skipping to change at page 5, line 48 skipping to change at page 6, line 9
of identifiers, is a process that is inherently dependent on the of identifiers, is a process that is inherently dependent on the
requirements of the community defining the identifier, how they will requirements of the community defining the identifier, how they will
be assigned, and the uses to which they will be put. All of these be assigned, and the uses to which they will be put. All of these
issues are specific to the individual community seeking to define a issues are specific to the individual community seeking to define a
namespace (e.g., publishing community, association of booksellers, namespace (e.g., publishing community, association of booksellers,
protocol developers, etc.); they are beyond the scope of the IETF URN protocol developers, etc.); they are beyond the scope of the IETF URN
work. work.
This document outlines the processes by which a collection of This document outlines the processes by which a collection of
identifiers satisfying certain constraints (uniqueness of assignment, identifiers satisfying certain constraints (uniqueness of assignment,
etc.) can become a bona fide URN namespace by obtaining a NID. In a etc.) can become a bona fide URN Namespace by obtaining a NID. In a
nutshell, a template for the definition of the namespace is completed nutshell, a template for the definition of the namespace is completed
for deposit with IANA, and a NID is assigned. The details of the for deposit with IANA, and a NID is assigned. The details of the
process and possibilities for NID strings are outlined below. process and possibilities for NID strings are outlined below.
3. URN Namespace (Registration) Types 3. URN Namespace (Registration) Types
There are three categories of URN namespaces defined here, There are three categories of URN Namespaces defined here,
distinguished by expected level of service and required procedures distinguished by expected level of service and required procedures
for registration. Registration processes for each of these namespace for registration. Registration processes for each of these namespace
types are given in Section 4. types are given in Section 4.
3.1. Experimental Namespaces 3.1. Experimental Namespaces
These are not explicitly registered with IANA. They take the form: These are not explicitly registered with IANA.
X-<NID>
No provision is made for avoiding collision of experimental NIDs; No provision is made for avoiding collision of experimental NIDs;
they are intended for use within internal or limited experimental they are intended for use within internal or limited experimental
contexts. contexts. However, as described below in Section 4.1, these are
designated by a specific form of the NID to allow differentiation
(without preexisting knowledge of details) from the other URN
Namespace types.
[[ Editorial Note: [[ Editorial Note:
Has anybody ever seen usage of such experimental URN Namespaces? Has anybody ever seen usage of such experimental URN Namespaces?
According to the observations of the author, three years of RFC 2611 According to the observations of the author, three years of RFC 2611
and eight years of RFC 3406 have constantly seen "tentative grabbing" and nine years of RFC 3406 have constantly seen "tentative grabbing"
and subsequent usage of NIDs that the stakeholders later have tried and subsequent usage of NIDs that the stakeholders later have tried
to register with IANA as Formal NIDs (with varying success). to register with IANA as Formal NIDs (with varying success).
So should this kind of namespaces better be dropped and a kind of So should this kind of namespaces better be dropped and a kind of
provisional NIDs be created? -- This would be in the spirit of BCP provisional NIDs be created? -- This would be in the spirit of BCP
100, RFC 4020 [RFC4020], and it would resemble the manner how URI 100, RFC 4020 [RFC4020], and it would resemble the manner how URI
Scheme registrations are dealt with (RFC 4395 [RFC4395], [IANA-URI]). Scheme registrations are dealt with (RFC 4395 [RFC4395], [IANA-URI]).
]] ]]
3.2. Informal Namespaces 3.2. Informal Namespaces
These are fully fledged URN namespaces, with all the rights and These are fully fledged URN Namespaces, with all the rights and
requirements associated thereto. Informal namespaces can be requirements associated thereto. Informal namespaces can be
registered in global registration services. They are required to registered in global registration services. They are required to
uphold the general principles of a well-managed URN namespace -- uphold the general principles of a well-managed URN Namespace --
providing persistent identification of resources and unique providing persistent identification of resources and unique
assignment of identifier strings. Informal and formal namespaces assignment of identifier strings. Informal and formal namespaces
(described below) differ in the NID assignment. IANA will assign an (described below) differ in the NID assignment. IANA will assign an
alphanumeric NID (following a defined pattern) to registered informal alphanumeric NID (following a defined pattern) to registered informal
namespaces, per the process outlined in Section 4. namespaces, per the process outlined in Section 4.
3.3. Formal Namespaces 3.3. Formal Namespaces
A formal namespace may be requested, and IETF review sought, in cases A formal namespace may be requested, and IETF review sought, in cases
where the publication of the NID proposal and the underlying where the publication of the NID proposal and the underlying
skipping to change at page 7, line 25 skipping to change at page 7, line 36
some aspects are not fully open. For example, a namespace may make some aspects are not fully open. For example, a namespace may make
use of a fee-based, privately managed, or proprietary registry for use of a fee-based, privately managed, or proprietary registry for
assignment of URNs in the namespace, but it may still provide benefit assignment of URNs in the namespace, but it may still provide benefit
to some Internet users if the services associated have openly- to some Internet users if the services associated have openly-
published access protocols. published access protocols.
In addition to the basic registration information defined in the In addition to the basic registration information defined in the
registration template (in Appendix A), a formal namespace request registration template (in Appendix A), a formal namespace request
must be accompanied by documented considerations of the need for a must be accompanied by documented considerations of the need for a
new namespace and of the community benefit from formally establishing new namespace and of the community benefit from formally establishing
the proposed URN namespace. the proposed URN Namespace.
Additionally, since the goal of URNs is to provide persistent Additionally, since the goal of URNs is to provide persistent
identification, some consideration as to the longevity and identification, some consideration as to the longevity and
maintainability of the namespace must be given. The collective maintainability of the namespace must be given. The collective
experience of the IETF community contains a wealth of information on experience of the IETF community contains a wealth of information on
technical factors that will prevent longevity of identification. technical factors that will prevent longevity of identification.
Thus, the IESG may elect not to accept a proposed namespace Thus, the IESG may elect not to accept a proposed namespace
registration if the IETF community consensus is that the registration registration if the IETF community consensus is that the registration
document contains technical flaws that will prevent (or seriously document contains technical flaws that will prevent (or seriously
impair the possibility of) persistent identification, and that it impair the possibility of) persistent identification, and that it
therefore should not be published as an RFC. therefore should not be published as an RFC.
Consideration should be given to these aspects: In addition to the technical aspects of the namespace and its
resolution, consideration should be given to the following
organizatorial aspects:
- the organization maintaining the URN namespace should demonstrate - the organization maintaining the URN Namespace should demonstrate
stability and the ability to maintain the URN namespace for a long stability and the ability to maintain the URN namespace for a long
time, and/or it should be clear how the namespace can continue to time, and/or it should be clear how the namespace can continue to
be usable/useful if the organization ceases to be able to foster be usable/useful if the organization ceases to be able to foster
it; it;
- it should demonstrate ability and competency in name assignment; - it should demonstrate ability and competency in name assignment;
this should improve the likelihood of persistence (e.g., to this should improve the likelihood of persistence (e.g., to
minimize the likelihood of conflicts); minimize the likelihood of conflicts);
- it should commit to not re-assigning existing names and allowing - it needs to commit to not re-assigning existing names and allowing
old names to continue to be valid, even if the owners or assignees old names to continue to be valid, even if the owners or assignees
of those names are no longer members or customers of that of those names are no longer members or customers of that
organization; this does not mean that there must be resolution of organization; this does not mean that there must be resolution of
such names, but that they must not resolve the name to false or such names, but that they must not resolve the name to false or
stale information, and that they must not be reassigned. stale information, and that they must not be reassigned.
These aspects, though hard to quantify objectively, should be These aspects, though hard to quantify objectively, should be
considered by organizations/people considering the development of a considered by organizations/people considering the development of a
Formal URN namespace, and they will be kept in mind when evaluating Formal URN Namespace, and they will be kept in mind when evaluating
the technical merits of any proposed Formal URN namespace. the technical merits of any proposed Formal URN Namespace. The kind
of mandate upon which the organization aims to undertake this
activity might give a strong indication for this evaluation, because
it likely mirrors the trust that other parties (e.g. states,
international treaty organizations, professionals' associations,
etc.) put on the organization.
4. URN Namespace Registry: Processes for Registration and Update 4. URN Namespace Registry: Processes for Registration and Update
Different levels of disclosure are expected/defined for namespaces. Different levels of disclosure are expected/defined for namespaces.
According to the level of open-forum discussion surrounding the According to the level of open-forum discussion surrounding the
disclosure, a URN namespace may be assigned an identifier or may disclosure, a URN Namespace may be assigned an identifier or may
request a particular identifier. request a particular identifier.
The IANA Considerations Guidelines document (BCP 26, RFC 5226 The IANA Considerations Guidelines document (BCP 26, RFC 5226
[RFC5226]) suggests the need to specify update mechanisms for [RFC5226]) suggests the need to specify update mechanisms for
registrations -- who is given the authority to do so, from time to registrations -- who is given the authority to do so, from time to
time, and what are the processes. Since URNs are meant to be time, and what are the processes. Since URNs are meant to be
persistently useful, few (if any) changes should be made to the persistently useful, few (if any) changes should be made to the
structural interpretation of URN strings (e.g., adding or removing structural interpretation of URN strings (e.g., adding or removing
rules for lexical equivalence that might affect the interpretation of rules for lexical equivalence that might affect the interpretation of
URN IDs already assigned). However, it may be important to introduce URN IDs already assigned). However, it may be important to introduce
clarifications, expand the list of authorized URN assigners, etc., clarifications, expand the list of authorized URN assigners, etc.,
over the natural course of a namespace's lifetime. Specific over the natural course of a namespace's lifetime. Specific
processes are outlined below. processes are outlined below.
The official list of registered URN namespaces is currently The official list of registered URN Namespaces is currently
maintained by IANA at maintained by IANA at
<http://www.iana.org/assignments/urn-namespaces/ <http://www.iana.org/assignments/urn-namespaces/>.
urn-namespaces.xhtml>.
[[ NOTE: It would be preferable to restore the generic, most
universally supported (HTML) form of the registry be identified by an
implementation-neutral URL, as previously supported by IANA:
<http://www.iana.org/assignments/urn-namespaces>. The content there
should link to alternate forms (.xml, .txt), and those alternate
versions should indicate the *other* versions; i.e., where currently
the .txt version also says, "This registry is also available in XML
and plain text formats.", it should better say: "This registry is
also available in HTML and XML formats." ]]
The registration is subdivided into two sub-registries, one for The registraty is subdivided into two sub-registries, one for "Formal
"Formal URN Namespaces" and one for "Informal URN Namespaces", and URN Namespaces" and one for "Informal URN Namespaces", and each entry
each entry there links to a stable repository of the registration there links to a stable repository of the registration document or
document or (an escrow copy of) the filled-out registration template. (an escrow copy of) the filled-out registration template.
The registration and maintenance procedures vary slightly between the The registration and maintenance procedures vary slightly between the
namespace types. namespace types.
4.1. Experimental Namespaces: No Registration 4.1. Experimental Namespaces: No Registration
The NIDs of Experimental Namespaces (Section 3.1) are not explicitly The NIDs of Experimental Namespaces (Section 3.1) are not explicitly
registered with IANA. They take the form: registered with IANA. They take the form:
X-<NID> X-<nid>
where <nid> is a string consisting solely of letters, decimal digits,
and hyphen ("-") characters, as specified by the NID syntax
specification in Section 2.1 of RFC 2141bis
[I-D.ietf-urnbis-rfc2141bis-urn].
No provision is made for avoiding collision of experimental NIDs; No provision is made for avoiding collision of experimental NIDs;
they are intended for use within internal or limited experimental they are intended for use within internal or limited experimental
contexts exclusively. contexts exclusively.
As there is no registration, no registration/maintenance procedures As there is no registration, no registration/maintenance procedures
are needed. are needed.
Usage of Experimental URN Namespaces MUST be short-lived and whithin
a private scope; it MUST NOT be disclosed to the Internet at large,
e.g. by distribution of software versions that make use of such.
4.2. Informal Namespaces 4.2. Informal Namespaces
The NIDs of Informal Namespaces are synthesized by IANA using an The NIDs of Informal Namespaces are synthesized by the IANA using an
assigned sequence number and registered in their own sub-registry, as assigned sequence number and registered in their own sub-registry, as
indicated in Section 4; they take the format: indicated in Section 4; they take the format:
"urn-" <number> urn-<number>
where <number> is the decimal representation of a natural number, where <number> is the decimal representation of a natural number,
with no leading zeroes. This sequence number is assigned by the IANA with no leading zeroes. This sequence number is assigned by the IANA
on a First-Come-First-Served [RFC5226] basis to registration requests on a First-Come-First-Served [RFC5226] basis to registration requests
for informal namespaces. for informal namespaces.
Registrants should send a copy of the registration template (as shown Registrants should send a copy of the registration template (as shown
in Appendix A), duly completed, to the urn-nid@ietf.org mailing list in Appendix A), duly completed, to the urn-nid@ietf.org mailing list
for review and allow for a two-week discussion period for clarifying for review and allow for a two-week discussion period for clarifying
the expression of the registration information and suggestions for the expression of the registration information and suggestions for
technical improvements to the namespace proposal. [ NOTE: Longer time technical improvements to the namespace proposal.
is needed in practice! Increase to 4 weeks? ] [[ NOTE: Longer time is needed in practice! Increase to 4 weeks? ]]
After suggestions for clarification of the registration information After suggestions for clarification of the registration information
have been incorporated, the template may be submitted for assignment have been incorporated, the template may be submitted for assignment
of a NID by email to iana@iana.org . of a NID by email to iana@iana.org .
Registrations may be updated later by the original registrant, or by Registrations may be updated later by the original registrant, or by
an entity designated by the registrant, by updating the registration an entity designated by the registrant, by updating the registration
template, submitting it to the discussion list for a further two-week template, submitting it to the discussion list for a further two-week
discussion period, and finally resubmitting it to IANA in a message discussion period, and finally resubmitting it to IANA in a message
to iana@iana.org . to iana@iana.org .
4.3. Formal Namespaces 4.3. Formal Namespaces
Formal NIDs are assigned via IETF Review, as defined in BCP 26 Formal NIDs are assigned via IETF Review, as defined in BCP 26
[RFC5226]. The designated expert(s) for URN namespace registrations [RFC5226]. The designated expert(s) for URN Namespace registrations
are nominated by the IESG, and their role adheres to the regulations are nominated by the IESG, and their role adheres to the regulations
in BCP 26, unless specified otherwise below. in BCP 26, unless specified otherwise below.
NIDs for Formal URN Namespaces MUST NOT have the forms indicated in
the preceding two sections for the other two Namespace types. (The
detailed formal rules are given below in Section 4.4.4.) Applicants,
in concert with the IANA experts, should ensure that the sought NID
strings are "proper" for the designated purpose, according to common
sense (and applicable legal rules).
This means that the Formal NID application is made via submission to This means that the Formal NID application is made via submission to
the IETF of an Internet-Draft that contains the namespace definition the IETF of an Internet-Draft that contains the namespace definition
and targets publication as an RFC of Informational or Standards Track and targets publication as an RFC of Informational or Standards Track
category, which needs to be approved by the IESG after performing an category, which needs to be approved by the IESG after performing an
IETF Last Call on the document and evaluating review comments. The IETF Last Call on the document and evaluating review comments. The
applicant can be an individual or an IETF working group, in alignment applicant can be an individual or an IETF working group, in alignment
with the designation of the Internet-Draft. with the designation of the Internet-Draft. It is RECOMMENDED that
the registration documents for NIDs belonging to an established
standard namespace aim at Standards Track, whereas other applications
aim at Informational.
Before publication can be requested, however, the draft namespace Before publication can be requested, however, the draft namespace
specification document must undergo an Expert Review process specification document must undergo an Expert Review process
[RFC5226] pursuant to the guidelines written here (as well as [RFC5226] pursuant to the guidelines written here (as well as
standard RFC publication guidelines). The template defined in standard RFC publication guidelines). The template defined in
Appendix A SHOULD be included as part of an RFC-to-be defining some Appendix A SHOULD be included as part of an RFC-to-be defining some
other aspect(s) of the namespace, or it may be put forward as a other aspect(s) of the namespace, or it may be put forward as a
namespace definition document in its own right. The proposed namespace definition document in its own right. The proposed
template (including a pointer to a readily available copy of the template (including a pointer to a readily available copy of the
registration document) should be sent to the urn-nid@ietf.org mailing registration document) should be sent to the urn-nid@ietf.org mailing
list for review. This list is monitored by the designated expert(s). list for review. This list is monitored by the designated expert(s).
The applicant has to allow for a two-week discussion period for
clarifying the expression of the registration information, and SHOULD The applicant has to allow for a two-week [[ four-week ? ]]
improve the namespace document and/or registration template based on discussion period for clarifying the expression of the registration
the comments received, under the guidance of the designated information, and SHOULD improve the namespace document and/or
expert(s), before the IESG reviews the document. registration template based on the comments received, under the
guidance of the designated expert(s), before the IESG reviews the
document.
Working groups generally SHOULD seek early expert review for a Working groups generally SHOULD seek early expert review for a
namespace definition document, before they hand it over to the IESG, namespace definition document, before they hand it over to the IESG,
and individual applicants are also advised to seek expert comments and individual applicants are also advised to seek expert comments
early enough. The aforementioned list can be contacted for informal early enough. The aforementioned list can be contacted for informal
advice at any stage. advice at any stage.
4.4. Registration Documents 4.4. Registration Documents
The following subsections describe essential, MANDATORY parts of URN The following subsections describe essential, MANDATORY parts of URN
namespace registration documents, which will be focal in the expert Namespace registration documents, which will be focal in the expert
Review process and IETF Review. Review process and IETF Review.
4.4.1. Namespace Considerations in Registration Documents 4.4.1. Namespace Considerations in Registration Documents
The namespace definition document MUST include a "Namespace The namespace definition document MUST include a "Namespace
Considerations" section that outlines the perceived need for a new Considerations" section that outlines the perceived need for a new
namespace (i.e., where existing namespaces fall short of the namespace (i.e., where existing namespaces fall short of the
proposer's requirements). proposer's requirements).
Considerations MUST include, directly or with the help of referenced Considerations MUST include, directly or with the help of referenced
skipping to change at page 11, line 28 skipping to change at page 11, line 47
- type of resources to be identified; - type of resources to be identified;
- type of services to be supported. - type of services to be supported.
NOTE: It is expected that more than one namespace may serve the same NOTE: It is expected that more than one namespace may serve the same
"functional" purpose; the intent of the "Namespace Considerations" "functional" purpose; the intent of the "Namespace Considerations"
section is to provide a record of the proposer's "due diligence" in section is to provide a record of the proposer's "due diligence" in
exploring existing possibilities, for the IESG's consideration. exploring existing possibilities, for the IESG's consideration.
[[ Editorial Note: See the endnote of the next section! ]] [[ Editorial Note: See the endnote of the next section!
In particular, the above list (from RFC 3406) seems to be rather
orthogonal to the primary purpose of such section (as indicated in
the first paragraph), namely to provide evidence for the perceived
need for the new namespace.
]]
4.4.2. Community Considerations in Registration Documents 4.4.2. Community Considerations in Registration Documents
The namespace definition document MUST also include a "Community The namespace definition document MUST also include a "Community
Considerations" section that indicates the dimensions upon which the Considerations" section that indicates the dimensions upon which the
proposer expects its community to be able to benefit by publication proposer expects its community to be able to benefit by publication
of this namespace, as well as how a general Internet user will be of this namespace, as well as how a general Internet user will be
able to use the space if they care to do so. able to use the space if they care to do so.
Potential considerations include: Potential considerations include:
skipping to change at page 11, line 51 skipping to change at page 12, line 26
- open operation of resolution servers for the namespace - open operation of resolution servers for the namespace
(server); (server);
- creation of software that can meaningfully resolve and access - creation of software that can meaningfully resolve and access
services for the namespace (client). services for the namespace (client).
[[ Editorial Note: [[ Editorial Note:
It is acknowledged that, in many cases, the Namespace Considerations It is acknowledged that, in many cases, the Namespace Considerations
and Community Considerations are closely intertwined. Further, the and Community Considerations are closely intertwined. Further, the
bulleted list above (from RFC 3406) seems to be more related to the bulleted lists above (from RFC 3406) seems to be more related to the
items in the registration template entitled "Identifier uniqueness items in the registration template entitled "Identifier uniqueness
considerations", "Identifier persistence considerations", "Process of considerations", "Identifier persistence considerations", "Process of
identifier assignment", and "Process for identifier resolution" than identifier assignment", and "Process for identifier resolution" than
to the primary objectives presented in the first paragraph above to the primary objectives presented in the first paragraph above
(also from RFC 3406). (also from RFC 3406).
In fact, namespace registration documents seen so far duplicate in In fact, namespace registration documents seen so far duplicate in
the registration template material from the "Community the registration template material from the "Community
Considerations" that addresses the above bullets. Considerations" that addresses the above bullets.
Therefore: Should this specification now allow a combined section Therefore: Should this specification now allow a combined section
"Namespace and Community Considerations" that focuses on the "Namespace and Community Considerations" that focuses on the
(non-)utility of possible alternate namespace re-use and the (non-)utility of possible alternate namespace re-use and the
*benefits* of an independent new namespace? *benefits* of an independent new namespace?
]] ]]
4.4.3. Security Considerations in Registration Documents 4.4.3. Security Considerations in Registration Documents
According to the general procurements for RFCs, URN namespace According to the general procurements for RFCs, URN Namespace
definition documents must include a "Security Considerations" section definition documents must include a "Security Considerations" section
(cf. BCP 72 [RFC3552]). That section has to identify the security (cf. BCP 72 [RFC3552]). That section has to identify the security
considerations specific to the subject URN namespace. If the subject considerations specific to the subject URN Namespace. If the subject
URN namespace is based on an underlying namespace, the registration URN Namespace is based on an underlying namespace, the registration
can include substantive security considerations described in can include substantive security considerations described in
specifications related to that particular namespace by reference to specifications related to that particular namespace by reference to
these documents. For general security considerations regarding URN these documents. For general security considerations regarding URN
usage (and more generally, URI usage), for the sake of clarity and usage (and more generally, URI usage), for the sake of clarity and
brevity, it should refer to the Security Considerations in STD 63 brevity, it should refer to the Security Considerations in STD 63
[RFC3986] and in the URN Syntax document [RFC3986] and in the URN Syntax document
[I-D.ietf-urnbis-rfc2141bis-urn]. [I-D.ietf-urnbis-rfc2141bis-urn].
4.4.4. IANA Considerations in Registration Documents 4.4.4. IANA Considerations in Registration Documents
According to the general procurements for RFCs, URN namespace According to the general procurements for RFCs, URN Namespace
definitions documents must include an "IANA Considerations" section definitions documents must include an "IANA Considerations" section
(cf. BCP 26 [RFC5226]). That section has to indicate that the (cf. BCP 26 [RFC5226]). That section has to indicate that the
document includes a URN Namespace registration that is to be entered document includes a URN Namespace registration that is to be entered
into the IANA registry of Formal URN Namespaces. into the IANA registry of Formal URN Namespaces.
Registration documents for formal URN namespaces will provide a Registration documents for formal URN Namespaces will provide a
particular, unique, desired NID string, and this will be assigned by particular, unique, desired NID string, and this will be assigned by
the Standards/Protocol Action of the IESG that approves the the Standards/Protocol Action of the IESG that approves the
publication of the registration document as an RFC. RFC 2141bis publication of the registration document as an RFC. RFC 2141bis
[I-D.ietf-urnbis-rfc2141bis-urn] specifies that NID strings are ASCII [I-D.ietf-urnbis-rfc2141bis-urn] specifies that NID strings are ASCII
strings that are interpreted in a case-insensitive manner, but the strings that are interpreted in a case-insensitive manner, but the
NID string SHALL be registered in the capitalization form preferred NID string SHALL be registered in the capitalization form preferred
by the registrant. The proposed NID string MUST conform with the by the registrant. The proposed NID string MUST conform with the
<nid> syntax rule in Section 2.1 of RFC 2141bis <nid> syntax rule in Section 2.1 of RFC 2141bis
[I-D.ietf-urnbis-rfc2141bis-urn] and it MUST adhere to the following [I-D.ietf-urnbis-rfc2141bis-urn] and it MUST adhere to the following
additional constraints: additional constraints:
- not be an already-registered NID; - not be an already-registered NID;
- not start with "X-" (see Section 4.1 above); - not start with "X-" (see Section 4.1 above);
- not start with "urn-" (see Section 4.2 above); - not start with "urn-" (see Section 4.2 above);
- not start with "xy-", where xy is any combination of 2 ASCII - not start with "xy-", where xy is any combination of 2 ASCII
letters (see NOTE below); letters (see NOTE below);
- be more than 2 letters long. - be more than 2 characters long.
NOTE: All two-letter combinations as well as two-letter combinations NOTE: All two-letter combinations as well as two-letter combinations
followed by "-" and any sequence of valid NID characters are reserved followed by "-" and any sequence of valid NID characters are reserved
for potential use as countrycode-based NIDs for eventual national for potential use as countrycode-based NIDs for eventual national
registrations of URN namespaces. The definition and scoping of rules registrations of URN Namespaces. The definition and scoping of rules
for allocation of responsibility for such namespaces is beyond the for allocation of responsibility for such namespaces is beyond the
scope of this document. scope of this document.
Further, to avoid confusion, "urn" is not allowed as an NID string; Further, to avoid confusion, "urn" is not allowed as an NID string;
IANA has permanently reserved this string to prohibit assignment. IANA has permanently reserved this string to prohibit assignment.
Registrations may be revised by updating the RFC through standard Registrations may be revised by updating the RFC through standard
IETF RFC update processes. In any case, a revised document, in the IETF RFC update processes. In any case, a revised document, in the
form of a new Internet-Draft, must be published, and the proposed form of a new Internet-Draft, must be published, and the proposed
updated template must be circulated on the urn-nid discussion list, updated template must be circulated on the urn-nid discussion list,
allowing for a two-week review period before pursuing RFC publication allowing for a two-week [[ four-week ? ]] review period before
of the new document. pursuing RFC publication of the new document.
5. Security Considerations 5. Security Considerations
This document largely focuses on providing mechanisms for the This document largely focuses on providing mechanisms for the
declaration of public information. Nominally, these declarations declaration of public information. Nominally, these declarations
should be of relatively low security profile, however there is always should be of relatively low security profile, however there is always
the danger of "spoofing" and providing mis-information. Information the danger of "spoofing" and providing mis-information. Information
in these declarations should be taken as advisory. in these declarations should be taken as advisory.
6. IANA Considerations 6. IANA Considerations
This document outlines the processes for registering URN namespaces, This document outlines the processes for registering URN Namespaces,
and has implications for the IANA in terms of registries to be and has implications for the IANA in terms of registries to be
maintained, as previously defined in RFC 3406 [RFC3406]. This maintained, as previously defined in RFC 3406 [RFC3406]. This
document replaces RFC 3406; it contains a revised description for the document replaces RFC 3406; it contains a revised description for the
management of the "Uniform Resource Names (URN) Namespaces" IANA management of the "Uniform Resource Names (URN) Namespaces" IANA
Registry that uses the policy designation terms from BCP 26, RFC 5226 Registry that uses the policy designation terms from BCP 26, RFC 5226
[RFC5226], but does not introduce significant changes to the [RFC5226], but does not introduce significant changes to the
applicable procedures. applicable procedures.
All references there to the predecessor, [RFC3406], should be All references there to the predecessor, [RFC3406], should be
replaced by references to this document. replaced by references to this document.
We would appreciate a reorganization of the Registry web page to make
the registration templates for Informal URN Namespaces directly
linked from the main page; this would make the page /assignments/
urn-informal.htm page dispensable (for persistency's sake, the web
server should redirect requests to the /assignments/urn-namespaces
page.
Section 4.4.4 above describes the syntax rules for NIDs to which the Section 4.4.4 above describes the syntax rules for NIDs to which the
registry needs to obey. As pointed out in Section 4.4.4 above and in registry needs to obey. As pointed out in Section 4.4.4 above and in
RFC 2141bis [I-D.ietf-urnbis-rfc2141bis-urn], the string "urn" is RFC 2141bis [I-D.ietf-urnbis-rfc2141bis-urn], the string "urn" is
permanently reserved and MUST NOT be assigned as an NID. permanently reserved and MUST NOT be assigned as an NID.
In all cases of new namespace registration proposals, the IANA should In all cases of new namespace registration proposals, the IANA should
provisionally assign the appropriate NID (informal or formal), as provisionally assign the appropriate NID (informal or formal), as
described throughout the body of this memo, once an IESG-designated described throughout the body of this memo, once an IESG-designated
expert has confirmed that the requisite registration process steps expert has confirmed that the requisite registration process steps
have been completed. These registrations become permanent and can be have been completed. These registrations become permanent and can be
made publicly available once the registration document has been made publicly available once the registration document has been
approved by the IESG for publications as a Standards Track or approved by the IESG for publications as a Standards Track or
Informational RFC. Informational RFC.
7. Acknowledgements 7. Acknowledgements
This document is heavily based on RFC 3406, the author of which are This document is heavily based on RFC 3406, the authors of which are
cordially acknowledged. cordially acknowledged.
This document also been inspired by other recent documents that have This document also been inspired by other recent documents that have
updated important IANA registries, and the countless authors and updated important IANA registries, and the countless authors and
contributors to these efforts are acknowledged anonymously. contributors to these efforts are acknowledged anonymously.
Your name could go here ... Several individuals in the URNbis working group have participated in
the detailed discussion of this memo. Particular thanks for detailed
review comments and text suggestions go to Juha Hakala and Mykyta
Yevstifeyev.
8. References 8. References
8.1. Normative References 8.1. Normative References
[I-D.ietf-urnbis-rfc2141bis-urn] [I-D.ietf-urnbis-rfc2141bis-urn]
Hoenes, A., "Uniform Resource Name (URN) Syntax", Hoenes, A., "Uniform Resource Name (URN) Syntax",
draft-ietf-urnbis-rfc2141bis-urn-00 (work in progress), draft-ietf-urnbis-rfc2141bis-urn-01 (work in progress),
November 2010. October 2011.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3339] Klyne, G., Ed. and C. Newman, "Date and Time on the [RFC3339] Klyne, G., Ed. and C. Newman, "Date and Time on the
Internet: Timestamps", RFC 3339, July 2002. Internet: Timestamps", RFC 3339, July 2002.
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
Resource Identifier (URI): Generic Syntax", STD 66, Resource Identifier (URI): Generic Syntax", STD 66,
RFC 3986, January 2005. RFC 3986, January 2005.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226, IANA Considerations Section in RFCs", BCP 26, RFC 5226,
May 2008. May 2008.
8.2. Informative References 8.2. Informative References
[IANA] IANA, "The Internet Assigned Numbers Authority", [IANA] IANA, "The Internet Assigned Numbers Authority",
<http://www.iana.org/>. <http://www.iana.org/>.
[IANA-URI] [IANA-URI] IANA, "URI Schemes Registry",
IANA, "URI Schemes Registry",
<http://www.iana.org/assignments/uri-schemes/>. <http://www.iana.org/assignments/uri-schemes/>.
[IANA-URN] [IANA-URN] IANA, "Uniform Resource Names (URN) Namespace Registry",
IANA, "Uniform Resource Names (URN) Namespace Registry",
<http://www.iana.org/assignments/urn-namespaces/>. <http://www.iana.org/assignments/urn-namespaces/>.
[RFC2276] Sollins, K., "Architectural Principles of Uniform Resource [RFC2276] Sollins, K., "Architectural Principles of Uniform Resource
Name Resolution", RFC 2276, January 1998. Name Resolution", RFC 2276, January 1998.
[RFC2611] Daigle, L., van Gulik, D., Iannella, R., and P. Faltstrom, [RFC2611] Daigle, L., van Gulik, D., Iannella, R., and P. Faltstrom,
"URN Namespace Definition Mechanisms", BCP 33, RFC 2611, "URN Namespace Definition Mechanisms", BCP 33, RFC 2611,
June 1999. June 1999.
[RFC3305] Mealling, M. and R. Denenberg, "Report from the Joint W3C/ [RFC3305] Mealling, M. and R. Denenberg, "Report from the Joint W3C/
skipping to change at page 16, line 10 skipping to change at page 16, line 46
[RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and [RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and
Registration Procedures for New URI Schemes", BCP 35, Registration Procedures for New URI Schemes", BCP 35,
RFC 4395, February 2006. RFC 4395, February 2006.
[RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234, January 2008. Specifications: ABNF", STD 68, RFC 5234, January 2008.
Appendix A. URN Namespace Definition Template Appendix A. URN Namespace Definition Template
Definition of a URN namespace is accomplished by completing the Definition of a URN Namespace is accomplished by completing the
following information template. following information template.
Apart from providing a mechanism for disclosing the structure of the Apart from providing a mechanism for disclosing the structure of the
URN namespace, this information is designed to be useful for URN Namespace, this information is designed to be useful for
- entities seeking to have a URN assigned in a namespace (if - entities seeking to have a URN assigned in a namespace (if
applicable) and applicable) and
- entities seeking to provide URN resolvers for a namespace (if - entities seeking to provide URN resolvers for a namespace (if
applicable). applicable).
This is particularly important for communities evaluating the This is particularly important for communities evaluating the
possibility of using a portion of an existing URN namespace rather possibility of using a portion of an existing URN Namespace rather
than creating their own. than creating their own.
Applications for Formal URN namespaces must also document "Namespace Applications for Formal URN Namespaces must also document "Namespace
Considerations", "Community Considerations", "Security Considerations", "Community Considerations", "Security
Considerations", and "IANA Considerations", as described in Considerations", and "IANA Considerations", as described in
Section 4.4. Section 4.4.
Information in the template is as follows (text in curly braces is Information in the template is as follows (text in curly braces is
tutorial and should be removed from filled-in templates): tutorial and should be removed from filled-in templates):
Namespace ID: Namespace ID:
{ If request is for an Informal NID, indicate so; the number will { If request is for an Informal NID, indicate so; the number will
skipping to change at page 18, line 40 skipping to change at page 19, line 26
Rules for Lexical Equivalence of NSS part: Rules for Lexical Equivalence of NSS part:
[[ Editorial Note: This clause moved into vicinity of "syntax". ]] [[ Editorial Note: This clause moved into vicinity of "syntax". ]]
[[ Editorial Note: In the past, there has been iterated trouble in [[ Editorial Note: In the past, there has been iterated trouble in
tentative registration documents with regard to what rules can be tentative registration documents with regard to what rules can be
imposed for lexical equivalence. Since the "urn:" prefix and the imposed for lexical equivalence. Since the "urn:" prefix and the
NID part both are invariably case-insensitive per RFC 3986 and RFC NID part both are invariably case-insensitive per RFC 3986 and RFC
2141[bis], in order to avoid repeated confusion, this version of 2141[bis], in order to avoid repeated confusion, this version of
the template tentatively restricts this clause to only the NSS the template tentatively restricts this clause to only the NSS
part of the new URN namespace definition documents. ]] part of the new URN Namespace definition documents. ]]
{ {
If there are particular algorithms for determining equivalence If there are particular algorithms for determining equivalence
between two identifiers in the underlying namespace (and hence, in between two identifiers in the underlying namespace (and hence, in
the URN string itself), rules can be provided here. the URN string itself), rules can be provided here.
Some examples include: Some examples include:
- equivalence between hyphenated and non-hyphenated groupings in - equivalence between hyphenated and non-hyphenated groupings in
the identifier string; the identifier string;
- equivalence between single-quotes and double-quotes; - equivalence between single-quotes and double-quotes;
skipping to change at page 19, line 37 skipping to change at page 20, line 25
- information is withheld; that is, the namespace is opaque. - information is withheld; that is, the namespace is opaque.
} }
Identifier persistence considerations: Identifier persistence considerations:
{ {
Although non-reassignment of URN identifiers ensures that a URN Although non-reassignment of URN identifiers ensures that a URN
will persist in identifying a particular resource even after the will persist in identifying a particular resource even after the
"lifetime of the resource", some consideration should be given to "lifetime of the resource", some consideration should be given to
the persistence of the usability of the URN. This is particularly the persistence of the usability of the URN. This is particularly
important in the case of URN namespaces providing global important in the case of URN Namespaces providing global
resolution. resolution.
Possible answers include, but are not limited to: Possible answers include, but are not limited to:
- quality of service considerations. - quality of service considerations.
} }
Process of identifier assignment: Process of identifier assignment:
{ {
This section should detail the mechanisms and/or authorities for This section should detail the mechanisms and/or authorities for
skipping to change at page 20, line 39 skipping to change at page 21, line 28
- the namespace is not listed with an RDS, this is not relevant; - the namespace is not listed with an RDS, this is not relevant;
- resolution mirroring is completely open, with a mechanism for - resolution mirroring is completely open, with a mechanism for
updating an appropriate RDS; updating an appropriate RDS;
- resolution is controlled by entities to which assignment has - resolution is controlled by entities to which assignment has
been delegated. been delegated.
} }
Validation mechanism: Validation mechanism:
{ {
Apart from attempting resolution of a URN, a URN namespace may Apart from attempting resolution of a URN, a URN Namespace may
provide mechanisms for "validating" a URN -- i.e., determining provide mechanisms for "validating" a URN -- i.e., determining
whether a given string is currently a validly-assigned URN. There whether a given string is currently a validly-assigned URN. There
are 2 issues here: 1) users should not "guess" URNs in a are 2 issues here: 1) users should not "guess" URNs in a
namespace; 2) when the URN namespace is based on an existing namespace; 2) when the URN Namespace is based on an existing
identifier system, it may not be the case that all the existing identifier system, it may not be the case that all the existing
identifiers are assigned on Day 0. The reasonable expectation is identifiers are assigned on Day 0. The reasonable expectation is
that the resource associated with each resulting URN is somehow that the resource associated with each resulting URN is somehow
related to the thing identified by the original identifier system, related to the thing identified by the original identifier system,
but those resources may not exist for each original identifier. but those resources may not exist for each original identifier.
For example, even if a telephone number-based URN namespace was For example, even if a telephone number-based URN Namespace was
created, it is not clear that all telephone numbers would created, it is not clear that all telephone numbers would
immediately become "valid" URNs, that could be resolved using immediately become "valid" URNs, that could be resolved using
whatever mechanisms are described as part of the namespace whatever mechanisms are described as part of the namespace
registration. registration.
Validation mechanisms might be: Validation mechanisms might be:
- a syntax grammar; - a syntax grammar;
- an on-line service; - an on-line service;
- an off-line service. - an off-line service.
} }
skipping to change at page 21, line 23 skipping to change at page 22, line 15
Scope: Scope:
{ {
This section should outline the scope of the use of the This section should outline the scope of the use of the
identifiers in this namespace. Apart from considerations of identifiers in this namespace. Apart from considerations of
private vs. public namespaces, this section is critical in private vs. public namespaces, this section is critical in
evaluating the applicability of a requested NID. For example, a evaluating the applicability of a requested NID. For example, a
namespace claiming to deal with "social security numbers" should namespace claiming to deal with "social security numbers" should
have a global scope and address all social security number have a global scope and address all social security number
structures (unlikely). On the other hand, at a national level, it structures (unlikely). On the other hand, at a national level, it
is reasonable to propose a URN namespace for "this nation's social is reasonable to propose a URN Namespace for "this nation's social
security numbers". security numbers".
} }
Appendix B. Illustration Appendix B. Illustration
B.1. Example Template B.1. Example Template
[[ Editorial Note: Do we really need this any more? [[ Editorial Note: Do we really need this any more?
Such an almost-concrete example likely contradicts current IESG Such an almost-concrete example likely contradicts current IESG
policy on usage of examples in RFCs. ]] policy on usage of examples in RFCs. ]]
skipping to change at page 22, line 17 skipping to change at page 22, line 46
To be assigned To be assigned
Registration Information: Registration Information:
- version number: 1 - version number: 1
- date: <when submitted> - date: <when submitted>
Declared registrant of the namespace: Declared registrant of the namespace:
- Registering organization: - Registering organization:
Name: Thinking Cat Enterprises Name: Thinking Cat Name: Thinking Cat Example Enterprises
Example Enterprises
Postal: 1 ThinkingCat Way Postal: 1 ThinkingCat Way
Trupville, NewCountry Trupville, NewCountry
- Designated contact person: - Designated contact person:
Name: L. Daigle Name: L. Daigle
Email: leslie@thinkingcat.example Email: leslie@thinkingcat.example
Declaration of syntactic structure of NSS part: Declaration of syntactic structure of NSS part:
The namespace specific string structure is as follows: The namespace specific string structure is as follows:
<FQDN>:<assigned string> <FQDN>:<assigned string>
skipping to change at page 27, line 46 skipping to change at page 28, line 36
per namespace that wants to adopt these possibilities, and maybe the per namespace that wants to adopt these possibilities, and maybe the
registration template needs a new clause where this will be specified registration template needs a new clause where this will be specified
-- or the information has to be assigned to existing clauses. -- or the information has to be assigned to existing clauses.
More elaboration on Services. Since RFC 2483 is considered outdated, More elaboration on Services. Since RFC 2483 is considered outdated,
but RFC 2483bis not yet a URNbis work item, we might need a registry but RFC 2483bis not yet a URNbis work item, we might need a registry
for URN Services (initially populated from RFC 2483) that can be for URN Services (initially populated from RFC 2483) that can be
referred to in namespace registration documents, thus avoiding referred to in namespace registration documents, thus avoiding
normative dependencies on a future RFC 2483bis. normative dependencies on a future RFC 2483bis.
Also see the Editorial Notes interspersed in the body of this draft. Do we actually need Experimental Namespaces?
What else? The syntax of the NID strings for the various NID types is given in
an informal manner (as has been done in RFC 3406); is it worth the
effort to introduce ABNF for this purpose?
Increase review/timeout periods for urn-nid list and IANA experts to
4 weeks?
Clarification of the desired content of the "Namespace
Considerations" and "Community Considerations" sections in
registration documents. Shall we admit a combined section for both
topics? (so far supported by 2 postings) Cf. the NOTEs in Sections
4.4.1 and 4.4.2 for more details.
Shall other strings than "urn" also be 'reserved' in the NID
registry? (e.g. "uri", "url", "urc", "example", ...)
Do we still need Appendix B.1 ? (There are lots of real-life
examples now!)
Also see the Editorial Notes interspersed in the body of this draft.
Author's Address Author's Address
Alfred Hoenes Alfred Hoenes
TR-Sys TR-Sys
Gerlinger Str. 12 Gerlinger Str. 12
Ditzingen D-71254 Ditzingen D-71254
Germany Germany
EMail: ah@TR-Sys.de EMail: ah@TR-Sys.de
 End of changes. 77 change blocks. 
121 lines changed or deleted 174 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/