据我所知,所有 URN 最终都会使用URN
架构,这意味着必须为 URI 加上前缀才能有效。但是,Fedora 41 KDE Spin 中的当前 CPE ID(openSUSE Tumbleweed 20241129 中的等效项)/etc/os-release
是:
CPE_NAME="cpe:/o:fedoraproject:fedora:41"
如果我没记错的话,它应该是:
CPE_NAME="urn:cpe:/o:fedoraproject:fedora:41"
我是否误读了RFC 8141?
URN 的分配是由一个组织完成的(或者,在某些情况下,根据算法或其他自动化过程),该组织已在“urn”方案中正式委派了一个 URN 命名空间(例如,“example”URN 命名空间 [RFC6963] 中的 URN 可能采用“urn:example:foo”的形式)。
(缺乏)重复
之前曾询问过discussion.fedoraproject.org
,但尚未得到回复。
CPE 名称不是 URN,因此它们不受 RFC 8141 的约束。在CPE 规范2.2 版中,它们被定义为独立 URI,作为
cpe:
顶级 URI 方案。根据RFC 3986 §1.1.3和W3C,URI 之间不再有“URN”和“URL”的严格划分;可以存在除
urn:
定位器之外的其他 URI 方案。在2.3 版本中,CPE 名称定义得更加抽象,可能有多个字符串表示,但os-release(5)规定
CPE_NAME
应继续使用与 CPE2.2 兼容的 CPE 名称“ URI 绑定语法”。