Zum Hauptinhalt springen

5. URN-Namensräume

Ein URN-Namensraum ist eine Sammlung von Namen, die drei Beschränkungen genügen: Jeder Name ist (1) eindeutig, (2) auf konsistente Weise zugewiesen und (3) nach einer gemeinsamen Definition zugewiesen.

  1. Die Beschränkung der "Eindeutigkeit" bedeutet, dass ein Name innerhalb des URN-Namensraums niemals mehr als einer Ressource zugewiesen und niemals einer anderen Ressource neu zugewiesen wird (für die Art von "Ressource", die durch innerhalb des URN-Namensraums zugewiesene URNs identifiziert wird). Dies gilt selbst dann, wenn der Name selbst als veraltet gekennzeichnet wird oder obsolet wird.

  2. Die Beschränkung der "konsistenten Zuweisung" bedeutet, dass ein Name innerhalb des URN-Namensraums von einer Organisation zugewiesen oder gemäß einem stets befolgten Prozess oder Algorithmus erzeugt wird.

  3. Die Beschränkung der "gemeinsamen Definition" bedeutet, dass klare Definitionen für die Syntax von Namen innerhalb des URN-Namensraums und für den Prozess ihrer Zuweisung oder Erzeugung vorliegen.

Ein URN-Namensraum wird durch einen bestimmten NID identifiziert, um die globale Eindeutigkeit von URNs sicherzustellen und optional einen Hinweis auf die Struktur der innerhalb eines URN-Namensraums zugewiesenen URNs zu geben.

Im Hinblick auf die globale Eindeutigkeit stellt die Verwendung unterschiedlicher NIDs für unterschiedliche Namenssammlungen sicher, dass zwei URNs für unterschiedliche Ressourcen niemals gleich sein werden, weil jede Sammlung jeden Namen eindeutig zuweisen muss. Eine einzelne Ressource kann jedoch mehr als einen ihr zugewiesenen URN haben, entweder im selben URN-Namensraum (wenn der URN-Namensraum dies zulässt) oder in unterschiedlichen URN-Namensräumen, und dies entweder zu ähnlichen oder zu unterschiedlichen Zwecken (MAY). (Wenn zum Beispiel ein Verlag einer elektronischen Publikation eine ISBN [RFC3187] zuweist und diese Publikation später in ein von einer Nationalbibliothek betriebenes digitales Langzeitarchiv aufgenommen wird, könnte die Bibliothek der Publikation eine National Bibliography Number (NBN) [RFC3188] zuweisen, was zu zwei URNs führt, die sich auf dasselbe Buch beziehen.) Vorbehaltlich anderer Beschränkungen, wie der durch die URI-Syntax [RFC3986] auferlegten, sollen die Regeln des URN-Schemas die Bewahrung der normalen und natürlichen Form von Namen ermöglichen, die in Nicht-URN-Identifikatorsystemen spezifiziert sind, wenn diese als URNs behandelt werden.

Im Hinblick auf die Struktur der innerhalb eines URN-Namensraums zugewiesenen Namen hängt die Entwicklung einer Namensstruktur (und damit einer Sammlung von Namen) von den Anforderungen der Gemeinschaft ab, die die Namen definiert, davon, wie die Namen zugewiesen und verwendet werden usw. Diese Fragen liegen außerhalb des Geltungsbereichs der URN-Syntax und der allgemeinen Regeln für URN-Namensräume, weil sie für die Gemeinschaft spezifisch sind, die ein Nicht-URN-Identifikatorsystem oder einen bestimmten URN-Namensraum definiert (z. B. die bibliografischen und verlegerischen Gemeinschaften im Fall des URN-Namensraums "ISBN" [RFC3187] und des URN-Namensraums "ISSN" [RFC3044] oder die Entwickler von Erweiterungen des Extensible Messaging and Presence Protocol [RFC6120] im Fall des URN-Namensraums "XMPP" [RFC4854]).

Weil das Doppelpunktzeichen (":") verwendet wird, um "urn" vom NID und den NID von der NSS zu trennen, ist es verlockend, sich den gesamten URN als durch Doppelpunktzeichen strukturiert vorzustellen und anzunehmen, dass Doppelpunkte eine Struktur oder Hierarchie innerhalb des NSS-Anteils des URN erzeugen. Eine solche Struktur könnte durch eine bestimmte NID-Spezifikation festgelegt werden, aber es gibt keine implizite Struktur. In einem URN wie

urn:example:apple:pear:plum:cherry

ist die NSS-Zeichenkette als Ganzes "apple🍐plum:cherry", und die Doppelpunktzeichen innerhalb jener NSS-Zeichenkette haben keine spezifische Bedeutung, sofern eine solche Bedeutung nicht in der Spezifikation des Namensraums "example" beschrieben wird.

URN-Namensräume erben durch die Natur von URNs bestimmte Rechte und Pflichten, insbesondere:

  1. Sie wahren die allgemeinen Prinzipien eines gut verwalteten URN-Namensraums, indem sie eine persistente Identifikation von Ressourcen und eine eindeutige Zuweisung von Namen nach einer gemeinsamen Definition bereitstellen.

  2. Optional können sie in globalen Registrierungsdiensten registriert werden, wie sie in [RFC2483] beschrieben sind.

Es gibt zwei Arten von URN-Namensräumen: formale und informelle. Sie unterscheiden sich durch das erwartete Serviceniveau, die zur Definition des URN-Namensraums benötigten Informationen und die Verfahren zur Registrierung. Da die Mehrheit der bisher registrierten URN-Namensräume formal war, konzentriert sich dieses Dokument auf formale URN-Namensräume.

5.1. Formale URN-Namensräume​

Ein formaler URN-Namensraum bringt einer Teilmenge von Nutzern im Internet Nutzen. Insbesondere wäre es nicht sinnvoll, wenn ein formaler URN-Namensraum nur von einer Gemeinschaft oder einem Netzwerk verwendet würde, das nicht mit dem Internet verbunden ist. Zum Beispiel wäre es unangemessen, wenn ein URN-Namensraum jemanden faktisch zwänge, ein proprietäres Netzwerk oder einen Dienst zu nutzen, der dem allgemeinen Internetnutzer nicht offensteht. Die Absicht ist, dass – obwohl die Gemeinschaft derer, die die innerhalb jenes URN-Namensraums zugewiesenen URNs aktiv nutzen könnten, klein sein mag – die potenzielle Verwendung von Namen innerhalb jenes URN-Namensraums jedem Nutzer im Internet offensteht. Formale URN-Namensräume können auch dann angemessen sein, wenn einige Aspekte nicht vollständig offen sind. Zum Beispiel könnte ein URN-Namensraum eine gebührenbasierte, privat verwaltete oder proprietäre Registry für die Zuweisung von URNs im URN-Namensraum nutzen. Es könnte jedoch einigen Internetnutzern dennoch nützen, wenn die zugehörigen Dienste öffentlich publizierte Namen haben.

Eine Organisation, die URNs innerhalb eines formalen URN-Namensraums zuweisen wird, sollte die folgenden Kriterien erfüllen (SHOULD):

  1. Organisatorische Stabilität und die Fähigkeit, den URN-Namensraum über lange Zeit zu pflegen; fehlt ein solcher Nachweis, sollte klar sein, wie der URN-Namensraum lebensfähig bleiben kann, wenn die Organisation den URN-Namensraum nicht mehr pflegen kann.

  2. Kompetenz bei der URN-Zuweisung. Dies erhöht die Wahrscheinlichkeit der Persistenz (z. B. um die Wahrscheinlichkeit von Konflikten zu minimieren).

  3. Die Verpflichtung, bestehende URNs nicht neu zuzuweisen und zuzulassen, dass alte URNs weiterhin gültig bleiben (z. B. wenn der Empfänger eines URN kein Mitglied oder Kunde der zuweisenden Organisation mehr ist, wenn sich verschiedene Informationen über den Empfänger oder die benannte Entität ändern, oder selbst wenn der Empfänger oder die benannte Entität selbst nicht mehr existiert; in allen diesen Fällen ist der URN weiterhin gültig).

Ein formaler URN-Namensraum legt einen bestimmten NID fest, vorbehaltlich der folgenden Beschränkungen (über die bereits spezifizierten Syntaxregeln hinaus):

  1. Er darf kein bereits registrierter NID sein (MUST NOT).

  2. Er darf nicht mit "urn-" beginnen (was für informelle URN-Namensräume reserviert ist) (MUST NOT).

  3. Er muss länger als zwei Zeichen sein (MUST), und er darf nicht mit ALPHA ALPHA "-" beginnen, d. h. mit einer beliebigen Zeichenkette aus zwei Buchstaben, auf die ein Bindestrich folgt; solche Zeichenketten sind für eine mögliche Verwendung als NIDs auf der Grundlage von ISO-Alpha-2-Ländercodes [ISO.3166-1] für eventuelle nationale Registrierungen von URN-Namensräumen reserviert (die Definition und der Umfang von Regeln für die Zuweisung von Verantwortung für solche ländercodebasierten URN-Namensräume liegen jedoch außerhalb des Geltungsbereichs dieses Dokuments) (MUST NOT). Infolgedessen darf er nicht mit der Zeichenkette "xn--" oder einer anderen Zeichenkette aus zwei Buchstaben, auf die zwei Bindestriche folgen, beginnen; solche Zeichenketten sind für eine mögliche Darstellung von DNS-A-Labels und ähnlichen Zeichenketten in der Zukunft reserviert [RFC5890] (MUST NOT).

  4. Er darf nicht mit der Zeichenkette "X-" beginnen, damit er nicht mit einem experimentellen URN-Namensraum verwechselt wird oder in Konflikt gerät, der zuvor durch [RFC3406] erlaubt war (MUST NOT).

Antragsteller und Prüfer, die neue NIDs erwägen, sollten sich auch darüber im Klaren sein, dass diese semantische Implikationen haben und daher eine Konfliktquelle sein können. Besondere Aufmerksamkeit sollte Zeichenketten gelten, die als Identifikatoren für Länder (einschließlich ISO 3166-1 Alpha-3-Codes) aufgefasst werden oder als unter deren Hoheit registriert gelten könnten, sowie Zeichenketten, die eine Verbindung mit bestehenden URI-Schemata, Nicht-URN-Identifikatorsystemen oder Marken nahelegen könnten. Im Einklang mit der traditionellen Politik sind Streitigkeiten über das "Eigentum" an bestimmten Zeichenketten jedoch Meinungsverschiedenheiten zwischen den beteiligten Parteien; weder IANA noch IETF werden sich in solche Streitigkeiten einschalten, außer auf Anordnung eines zuständigen Gerichts.

5.2. Informelle URN-Namensräume​

Informelle URN-Namensräume sind vollwertige URN-Namensräume mit allen zugehörigen Rechten und Pflichten. Informelle URN-Namensräume unterscheiden sich von formalen URN-Namensräumen im Verfahren zur Zuweisung des NID: Bei einem informellen URN-Namensraum bestimmt der Registrant den NID nicht; stattdessen weist IANA den NID zu, der aus der Zeichenkette "urn-" gefolgt von einer oder mehreren Ziffern besteht (z. B. "urn-7"), wobei die Ziffern aus der nächsten verfügbaren Zahl in der Folge der den informellen URN-Namensräumen zugewiesenen positiven ganzen Zahlen bestehen. Somit lautet die Syntax eines informellen URN-Namensraum-Identifikators:

InformalNamespaceName = "urn-" Number
Number = DigitNonZero 0*Digit
DigitNonZero = "1"/ "2" / "3" / "4"/ "5"
/ "6" / "7" / "8" / "9"
Digit = "0" / DigitNonZero

Die einzigen Beschränkungen für <Number> sind, dass es (1) ausschließlich aus ASCII-Ziffern besteht, (2) keine führenden Nullen hat und (3) nicht dazu führt, dass der NID die für die URN-Syntax definierten Längenbeschränkungen überschreitet (siehe Abschnitt 2).