1. Einführung (Introduction)
Ein Uniform Resource Name (URN) ist ein Uniform Resource Identifier (URI) [RFC3986], der unter dem "urn" URI-Schema und einem bestimmten URN-Namensraum zugewiesen wird, mit der Absicht, dass der URN ein persistenter, standortunabhängiger Ressourcenbezeichner sein wird. Ein URN-Namensraum ist eine Sammlung solcher URNs, von denen jeder (1) eindeutig ist, (2) auf konsistente und verwaltete Weise zugewiesen wird und (3) gemäß einer gemeinsamen Definition zugewiesen wird. (Einige URN-Namensräume erstellen Namen, die nur als URNs existieren, während andere URNs basierend auf Namen zuweisen, die bereits in Nicht-URN-Bezeichnersystemen erstellt wurden, wie ISBNs [RFC3187], ISSNs [RFC3044] oder RFCs [RFC2648].)
Die Zuweisung von URNs erfolgt durch eine Organisation (oder in einigen Fällen gemäß einem Algorithmus oder einem anderen automatisierten Prozess), der formal ein URN-Namensraum innerhalb des "urn"-Schemas delegiert wurde (z. B. könnte ein URN im "example" URN-Namensraum [RFC6963] die Form "urn:example:foo" haben).
Dieses Dokument basiert auf zwei Schlüsselannahmen:
-
Die Zuweisung eines URN ist ein verwalteter Prozess.
-
Der Raum der URN-Namensräume wird selbst verwaltet.
Während andere URI-Schemata es ermöglichen können, dass Ressourcenbezeichner frei gewählt und zugewiesen werden, ist dies bei URNs nicht der Fall. Die syntaktische Korrektheit eines Namens, der mit "urn:" beginnt, reicht nicht aus, um ihn zu einem URN zu machen. Damit der Name ein gültiger URN ist, muss der Namensraum-Identifikator (Namespace Identifier, NID) gemäß den hier definierten Regeln registriert werden, und die verbleibenden Teile des zugewiesenen Namensteils des URN müssen gemäß den Regeln für den registrierten URN-Namensraum generiert werden.
Damit Informationen sowohl über die URN-Syntax als auch über URN-Namensräume an einem Ort verfügbar sind, führt dieses Dokument Folgendes aus:
-
Definiert die kanonische Syntax für URNs im Allgemeinen (auf eine Weise, die mit der URI-Syntax konsistent ist), spezifiziert Methoden zur Bestimmung der URN-Äquivalenz und diskutiert die URI-Konformität.
-
Spezifiziert eine Methode zur Definition eines URN-Namensraums und dessen Zuordnung zu einem bestimmten NID und beschreibt Verfahren zur Registrierung von URN-NIDs bei der Internet Assigned Numbers Authority (IANA).
Für die URN-Syntax und URN-Namensräume modernisiert und ersetzt dieses Dokument die ursprünglichen Spezifikationen für die URN-Syntax [RFC2141] und für die Definition und Registrierung von URN-Namensräumen [RFC3406]. Diese Änderungen bauen auf den Schlüsselanforderungen auf, die in der ursprünglichen funktionalen Beschreibung für URNs [RFC1737] bereitgestellt wurden, und auf den Lektionen vieler Jahre Erfahrung. In diesen ursprünglichen Dokumenten und im vorliegenden Dokument besteht die Absicht darin, URNs auf konsistente Weise zu definieren, sodass, wo immer praktikabel, das Parsen, Handhaben und Auflösen von URNs unabhängig vom URN-Namensraum sein kann, innerhalb dessen ein gegebener URN zugewiesen ist.
Zusammen mit Beiträgen mehrerer wichtiger Benutzergemeinschaften erforderten die Geschichte und Erfahrungen mit URNs eine Erweiterung der URN-Definition zur Unterstützung neuer Funktionalität, einschließlich der Verwendung von Syntax, die in RFC 2141 explizit für zukünftige Standardisierung reserviert war. Alle URN-Namensräume und URNs, die unter den früheren Spezifikationen gültig waren, bleiben gültig, obwohl es nützlich sein kann, die Definitionen einiger URN-Namensräume zu aktualisieren, um neue Funktionen zu nutzen.
Die vorstehenden Überlegungen können zusammen mit verschiedenen Unterschieden zwischen URNs und URIs, die Lokatoren sind (insbesondere URLs), sowie dem größeren Fokus auf URLs in RFC 3986 als ultimativem Nachfolger von [RFC1738] und [RFC1808] zu einigen Interpretationen von RFC 3986 und dieser Spezifikation führen, die (oder vielleicht tatsächlich sind) nicht vollständig konsistent erscheinen, insbesondere in Bezug auf Aktionen oder Semantik außer der grundlegenden Syntax selbst. Wenn solche Situationen auftreten, sollten Diskussionen über URNs und URN-Namensräume gemäß diesem Dokument interpretiert werden und nicht durch Extrapolation von RFC 3986.
Zusammenfassungen der Änderungen gegenüber RFCs 2141 und 3406 erscheinen in den Anhängen B bzw. C. Dieses Dokument macht sowohl [RFC2141] als auch [RFC3406] obsolet. Obwohl es [RFC1737] oder [RFC2276] nicht explizit aktualisiert oder ersetzt, sollte sich der Leser, der auf diese Dokumente verweist, bewusst sein, dass das konzeptionelle Modell von URNs in diesem Dokument sich leicht von diesen älteren Spezifikationen unterscheidet.