付録 B. RFC 2141 からの変更点
本書は、[RFC2141] の構文と意味論から実質的な変更を行います。
B.1. RFC 2141 からの構文の変更
[RFC2141] で提供された URN の構文は、[RFC3986] における URI の更新された仕様より前に定義されました。本書では、URN 構文の定義を次のことを行うように更新します。
-
URI 構文との整合性を確保する。
-
URI のクエリやフラグメントに類似したパラメータを持つ URN の使用を容易にする。
-
URN の解決に影響を与えるパラメータを許可する。
-
"/" 文字を含む非 URN 識別子システムとの URN の使用を容易にする。
特に、本仕様は次のことを行います。
-
RFC 2141 によって将来の使用のために予約されていた "/"、"?"、および "#" の文字を明示的に許可するように URN 構文を拡張する。この変更はまた、それらのコンポーネントを必ずしも URI の意味論に結び付けることなく、URI 構文のいくつかのコンポーネントを実質的に許可します。
-
URN 解決サービスとのやり取りで使用できる追加のコンポーネントの一般的な構文を定義する。
-
NID の末尾の "-" を許可しない。
-
NSS 内で "/"、"~"、および "&" の文字を許可する。
-
いくつかの小さな構文の調整を行う。
B.2. RFC 2141 からのその他の変更
-
"urn" を URI スキームとして正式に登録する。
-
現在 r-component、q-component、および f-component と呼ばれているものを許可する。
さらに、URI の定義 [RFC3986] および IANA への情報登録のプロセス [RFC5226]、ならびにセキュリティ [RFC3552]、プライバシー [RFC6973]、および識別子の比較 [RFC6943] に関するより現代的な指針と整合するように、一部の記述が更新されています。