Skip to main content

5. URN 命名空间 (URN Namespaces)

URN 命名空间是遵守三个约束条件的名称集合:每个名称(1)唯一,(2)以一致的方式分配,(3)根据通用定义分配。

  1. 唯一性约束:URN 命名空间内的名称永远不会分配给多个资源,也永远不会重新分配给不同的资源(对于 URN 命名空间内分配的 URN 标识的"资源"类型)。即使名称本身被弃用或过时,这一点仍然成立。

  2. 一致分配约束:URN 命名空间内的名称由组织分配或根据始终遵循的过程或算法创建。

  3. 通用定义约束:URN 命名空间内名称的语法以及分配或创建它们的过程有明确的定义。

URN 命名空间由特定的 NID 标识,以确保 URN 的全局唯一性,并可选地提供有关 URN 命名空间内分配的 URN 结构的提示。

因为冒号字符(":")用于将 "urn" 与 NID 分隔开,以及将 NID 与 NSS 分隔开,所以很容易将整个 URN 视为由冒号字符结构化的,并假设冒号在 URN 的 NSS 部分内创建结构或层次结构。这种结构可以由特定的 NID 规范指定,但没有隐式结构。

URN 命名空间有两种类型:正式和非正式。它们通过预期的服务水平、定义 URN 命名空间所需的信息以及注册程序来区分。