URN(Uniform Resource Name)とは?URI・URLとの違い、構造、解決方法と実務で押さえるべきポイント
概要 — URN(Uniform Resource Name)とは何か
URN(Uniform Resource Name)は、インターネット上のリソースを「名前」で一意に識別するための仕組みで、URI(Uniform Resource Identifier)の一種です。URNはリソースの所在(ロケーション)に依存せず恒久的に識別することを目的として設計されました。日常的に使うURL(Uniform Resource Locator、場所を示す識別子)と混同されやすいですが、機能的には「名前(who/what)」を示すものです。
歴史と標準化
URNの概念は1990年代に登場し、初期の仕様は RFC 2141(1997)で定義されました。その後、URI全般の整理や拡張を経て、URNの最新仕様は RFC 8141(2017年)で規定されています。URI全体の文脈は RFC 3986(2005年)で定義され、URNはそのサブセット/特殊形として扱われます。さらに、URNの名前空間登録や運用ルールについては RFC 3406 に仕組みが説明されています。
基本的な構造(構文)
URNはおおむね次のような構文を持ちます。
- urn:<NID>:<NSS>
ここで、NID(Namespace Identifier)は名前空間識別子で、どの命名体系(ISBN、DOI、ietf など)に属するかを示します。NSS(Namespace Specific String)は、その名前空間内で一意に識別される文字列です。たとえば:
- urn:isbn:0451450523 (ISBNをURNで表した例)
- urn:ietf:rfc:2648 (IETFのRFCを指す例)
- urn:doi:10.1000/182 (DOIをURN的に表した例)
NIDは多くの場合大文字小文字を区別しません(case-insensitive)で、NSSの取り扱い(大文字小文字の区別など)は名前空間ごとに定義されます。RFC 8141が最新の文法上の詳細を規定しています。
URN と URI / URL の違い
- URI(Uniform Resource Identifier): 名前でも位置でもどちらでも表せる包括的な概念。
- URL(Uniform Resource Locator): アクセス手段(プロトコル)や場所(ホスト、パス)を含み、リソースへ到達するための情報を示す。「どこにあるか」を表す。
- URN(Uniform Resource Name): リソースの恒久的な名前を示す。「何であるか」を表す。ロケーションに依存しない。
つまり、URLは「場所」としての識別子、URNは「名前」としての識別子であり、どちらもURIに含まれる概念です(URI = URL や URN を含む上位概念)。
名前空間(NID)と登録
URNを実用に供するためには、名前空間(NID)を定義し、その管理方針や命名規則を明示する必要があります。URNの名前空間はIANA(Internet Assigned Numbers Authority)で登録・管理されており、新しい名前空間を作る場合は登録手続きが必要です(RFC 3406 に登録メカニズムの説明あり)。
代表的な名前空間の例:
- isbn — 書籍のISBNをURNで表現
- doi — DOI(Digital Object Identifier)
- ietf — IETF関連(RFCなど)
名前空間ごとにNSSの解釈や大文字小文字の扱い、検証方法などが定められ、永続性や管理責任も各名前空間管理者に委ねられます。
解決(resolution)と永続性の現実
URNは「恒久的な名前」を意図しますが、実際にURNからリソースの現行アクセス先(URL)を得るための統一された、世界共通の解決手段(resolver)は存在しません。複数の仕組みや試みがありましたが、普遍的な単一の解決フレームワークには至っていません。
代表的な関連技術:
- Handle System / DOI:DOIは名前空間「doi」を通じて広く利用され、Handle System(/doi.org のリダイレクト)で解決できます。DOIは実質的に恒久識別子として機能していますが、その永続性は運用者の管理に依存します。
- URN解決プロトコルの提案:過去にDNSやNAPTRなどを利用した解決の提案がなされましたが、普遍的採用には至っていません。
- 各コミュニティ/機関が提供する解決サービス:図書館、アーカイブ、学術出版社などが独自にURN→場所を解決する仕組みを提供することが多いです。
したがって「URNだから必ず永続的にアクセスできる」という保証はなく、永続性を確保するには名前空間の運用方針や解決インフラの持続性が重要です。
利用分野と実例
URNは特に次のような分野で有益とされています。
- 図書館・出版:ISBNやその他の標準識別子を用いて書誌情報を恒久的に示す。
- 学術論文・データ:DOIのような恒久識別子が広く採用され、引用やメタデータ管理に利用される。
- 標準化文書:IETFのRFCなど、仕様書を特定するためにURN風の識別子が用いられることがある。
- アーカイブ/デジタル保存:長期間にわたる識別の必要がある資産に対してURN的な名前付けが有効。
実務上の注意点
- 永続性は名称自体の特性ではなく、管理・運用体制に依存する。URNを導入する際は、名前空間管理者の責任や解決インフラの長期維持計画を確認すること。
- NSSの文字コード・エンコーディングや大文字小文字の扱いは名前空間ごとに差があるため、実装時は該当仕様を厳密に確認すること。
- URNはロケーション情報を含まないため、実際のアクセス経路を別途提供する(メタデータや解決サービス)運用設計が必要。
- 互換性:既存のURLベースのエコシステム(検索エンジン、ブラウザ)との連携を考慮する。多くの場合、URNをHTTPで解決できるようにリダイレクトを用意するなどの工夫が行われる。
まとめ
URNは「恒久的な名前」を提供するための標準的な仕組みで、URIの一種として位置づけられます。構文は urn:<NID>:<NSS> という形で表され、名前空間ごとの管理と登録が重要です。実務ではURNそのものの存在だけで永続性が保証されるわけではなく、名前空間運用者の責任や解決サービスの継続が鍵になります。ライブラリ、学術、アーカイブなど長期的識別が求められる領域で有用なツールであり、導入時は仕様(RFC 8141 等)と名前空間ポリシーを確認してください。
参考文献
- RFC 8141 — Uniform Resource Names (URNs)
- RFC 3986 — Uniform Resource Identifier (URI): Generic Syntax
- RFC 3406 — Uniform Resource Name (URN) Namespace Definition Mechanisms
- IANA — URN Namespace Registrations
- Wikipedia — Uniform Resource Name
- DOI Foundation — doi.org
- International ISBN Agency
- Handle System


