1. Introduction
Un Nom Uniforme de Ressource (Uniform Resource Name, URN) est un Identifiant Uniforme de Ressource (Uniform Resource Identifier, URI) [RFC3986] qui est attribué sous le schéma URI "urn" et un espace de noms URN particulier, avec l'intention que l'URN soit un identifiant de ressource persistant et indépendant de l'emplacement. Un espace de noms URN est une collection de tels URN, dont chacun est (1) unique, (2) attribué de manière cohérente et gérée, et (3) attribué selon une définition commune. (Certains espaces de noms URN créent des noms qui n'existent que sous forme d'URN, tandis que d'autres attribuent des URN basés sur des noms qui ont déjà été créés dans des systèmes d'identifiants non-URN, tels que les ISBN [RFC3187], les ISSN [RFC3044] ou les RFC [RFC2648].)
L'attribution des URN est effectuée par une organisation (ou, dans certains cas, selon un algorithme ou un autre processus automatisé) qui a été formellement déléguée un espace de noms URN dans le schéma "urn" (par exemple, un URN dans l'espace de noms URN "example" [RFC6963] pourrait être de la forme "urn:example:foo").
Ce document repose sur deux hypothèses clés :
-
L'attribution d'un URN est un processus géré.
-
L'espace des espaces de noms URN est lui-même géré.
Alors que d'autres schémas URI peuvent permettre aux identifiants de ressources d'être librement choisis et attribués, ce n'est pas le cas pour les URN. La correction syntaxique d'un nom commençant par "urn:" n'est pas suffisante pour en faire un URN. Pour que le nom soit un URN valide, l'identifiant d'espace de noms (Namespace Identifier, NID) doit être enregistré conformément aux règles définies ici, et les parties restantes de la portion de nom attribué de l'URN doivent être générées conformément aux règles de l'espace de noms URN enregistré.
Afin que les informations sur la syntaxe URN et les espaces de noms URN soient disponibles en un seul endroit, ce document effectue les opérations suivantes :
-
Définit la syntaxe canonique pour les URN en général (d'une manière cohérente avec la syntaxe URI), spécifie les méthodes pour déterminer l'équivalence URN et discute de la conformité URI.
-
Spécifie une méthode pour définir un espace de noms URN et l'associer à un NID particulier, et décrit les procédures d'enregistrement des NID URN auprès de l'Internet Assigned Numbers Authority (IANA).
Pour la syntaxe URN et les espaces de noms URN, ce document modernise et remplace les spécifications originales pour la syntaxe URN [RFC2141] et pour la définition et l'enregistrement des espaces de noms URN [RFC3406]. Ces modifications s'appuient sur les exigences clés fournies dans la description fonctionnelle originale des URN [RFC1737] et sur les leçons de nombreuses années d'expérience. Dans ces documents originaux et dans le présent document, l'intention est de définir les URN de manière cohérente afin que, dans la mesure du possible, l'analyse, la gestion et la résolution des URN puissent être indépendantes de l'espace de noms URN dans lequel un URN donné est attribué.
Avec les contributions de plusieurs communautés d'utilisateurs clés, l'histoire et les expériences avec les URN ont dicté l'expansion de la définition URN pour prendre en charge de nouvelles fonctionnalités, y compris l'utilisation de syntaxe explicitement réservée pour la standardisation future dans RFC 2141. Tous les espaces de noms URN et URN qui étaient valides sous les spécifications antérieures restent valides, même s'il peut être utile de mettre à jour les définitions de certains espaces de noms URN pour profiter des nouvelles fonctionnalités.
Les considérations précédentes, ainsi que diverses différences entre les URN et les URI qui sont des localisateurs (en particulier les URL) ainsi que l'accent accru sur les URL dans RFC 3986 en tant que successeur ultime de [RFC1738] et [RFC1808], peuvent conduire à certaines interprétations de RFC 3986 et de cette spécification qui semblent (ou sont peut-être réellement) pas complètement cohérentes, en particulier en ce qui concerne les actions ou la sémantique autres que la syntaxe de base elle-même. Si de telles situations se présentent, les discussions sur les URN et les espaces de noms URN doivent être interprétées selon ce document et non par extrapolation de RFC 3986.
Les résumés des modifications par rapport aux RFC 2141 et 3406 apparaissent respectivement dans les Annexes B et C. Ce document rend obsolètes à la fois [RFC2141] et [RFC3406]. Bien qu'il ne mette pas explicitement à jour ou ne remplace pas [RFC1737] ou [RFC2276], le lecteur qui fait référence à ces documents doit être conscient que le modèle conceptuel des URN dans ce document est légèrement différent de ces spécifications plus anciennes.