付録 B. RFC 2141 からの変更
この文書は、RFC 2141 の構文とセマンティクスから実質的な変更を加えています。
B.1. 構文の変更
RFC 2141 で提供された URN の構文は、RFC 3986 で URI 仕様が更新される前に定義されました。本文書では、次の目標を達成するために URN 構文の定義を更新しています:
主な目的
- URI 構文との一貫性を確保
- URI クエリやフラグメントに類似したパラメータを持つ URN の使用を促進
- URN 解決に影響を与えるパラメータを許可
- "/" 文字を含む非 URN 識別子システムでの URN の使用を容易化
具体的な変更
この仕様は以下を行います:
1. 拡張文字サポート
URN 構文を拡張して、RFC 2141 で将来の使用のために予約されていた文字 "/"、"?"、"#" を明示的に許可します。この変更により、URI セマンティクスに必ずしも結び付けることなく、URI 構文のいくつかのコンポーネントも効果的に許可されます。
2. 解決サービスコンポーネント
URN 解決サービスとのやり取りで使用できる追加コンポーネントの一般的な構文を定義します。
3. NID 制限
NID の末尾に "-" を使用することを禁止します。
4. NSS 文字セット拡張
NSS で "/"、"~"、"&" 文字を許可します。
5. その他の調整
いくつかの小さな構文調整を行います。
互換性への影響
これらの変更により、URN の柔軟性と最新の URI システムとの互換性が向上し、同時にコアセマンティクスの安定性が維持されます。