Anhang B. Änderungen gegenüber RFC 2141
Dieses Dokument nimmt wesentliche Änderungen an der Syntax und Semantik von [RFC2141] vor:
B.1. Syntaxänderungen gegenüber RFC 2141
Die in [RFC2141] angegebene Syntax von URNs wurde vor der aktualisierten Spezifikation von URIs in [RFC3986] definiert. Die Definition der URN-Syntax wird in diesem Dokument aktualisiert, um Folgendes zu tun:
-
Die Konsistenz mit der URI-Syntax sicherstellen.
-
Die Verwendung von URNs mit Parametern ähnlich URI-Queries und -Fragmenten erleichtern.
-
Parameter zulassen, die die URN-Auflösung beeinflussen.
-
Die Verwendung von URNs mit Nicht-URN-Identifikatorsystemen erleichtern, die das Zeichen "/" enthalten.
Insbesondere tut diese Spezifikation Folgendes:
-
Sie erweitert die URN-Syntax, um die Zeichen "/", "?" und "#" ausdrücklich zuzulassen, die von RFC 2141 für die künftige Verwendung reserviert waren. Diese Änderung erlaubt faktisch auch mehrere Komponenten der URI-Syntax, ohne jene Komponenten notwendigerweise an die URI-Semantik zu binden.
-
Sie definiert eine allgemeine Syntax für eine zusätzliche Komponente, die bei Interaktionen mit einem URN-Auflösungsdienst verwendet werden kann.
-
Sie verbietet "-" am Ende des NID.
-
Sie erlaubt die Zeichen "/", "~" und "&" in der NSS.
-
Sie nimmt mehrere kleinere Syntaxanpassungen vor.
B.2. Sonstige Änderungen gegenüber RFC 2141
-
Sie registriert "urn" formell als URI-Schema.
-
Sie erlaubt das, was heute r-components, q-components und f-components genannt wird.
Darüber hinaus wurde ein Teil des Textes aktualisiert, um mit der Definition von URIs [RFC3986] und den Verfahren zur Registrierung von Informationen bei IANA [RFC5226] sowie mit moderneren Leitlinien hinsichtlich Sicherheit [RFC3552], Datenschutz [RFC6973] und Identifikatorvergleich [RFC6943] konsistent zu sein.