规范/词汇表的URI为什么包含日期信息?

时间:2019-06-07 16:42:58

标签: uri rdf vocabulary rfc3986

大多数示例名称空间URI似乎在其路径中包含年/月/日的某种组合:

rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#

rdfs:http://www.w3.org/2000/01/rdf-schema#>

(对于我而言),当词汇表中包含的概念不完全是临时的时,为什么要在URI中包括部分创建日期才有意义是为什么?

编辑

由于存在旧的w3c(和可能的其他组织)注释,而这些注释仍在语义Web的SEO上仍然很高,因此可能还会造成其他混乱。例如,this note from a w3c users group建议在URI中使用日期。

  

可管理性。   以一种可以管理的方式发布URI。一种好的做法是将当前年份包括在URI路径中,以便您可以每年更改URI模式,而不会破坏较旧的URI。

@cygri仍然是正确的(链接是2010年之前的),只是为遇到冲突信息的人指出这一点。

1 个答案:

答案 0 :(得分:7)

  

(对我而言),当词汇表中包含的概念不完全是临时的时,为什么要在URI中包括部分创建日期才有意义,这是不明显的。

这是个坏主意,不应该这样做。

这些命名空间来自RDF的早期,当时还不了解有关语义Web的URI管理的良好实践。如今,W3C为新词汇使用了http://www.w3.org/ns/csvw#之类的更短且没有日期的命名空间,但是鉴于已经包含这些命名空间的大量数据和工具已经发布,因此更改旧命名空间实际上是不可能的。

那为什么W3C认为最好包含当时的日期?

因为W3C几乎在所有URI中都包含日期信息。这是分配URI的日期。这是他们确保URI唯一且不会意外冲突的方式。因此,在2000年分配的所有URI的路径都以/2000/开头,所有从2001年开始的路径都以/2001/开头,依此类推。对于W3C标准之类的“高价值”文档,它们还会分配一个简短的别名,例如http://www.w3.org/TR/html

我当时想,他们认为词汇表不需要短别名,因为只有机器才能看到这些URI,而名称空间前缀将被用于隐藏它们。

如今,一般的智慧是分配URI时“尽可能地省去”。因此,具有http://schema.org/Person这样的类URI的schema.org非常完美。

  

大多数名称空间URI的路径中似乎包含年/月/日的某种组合

那不是真的。如果名称空间URI中有日期,则可能是2010年之前的W3C URI。大多数名称空间URI中都没有日期。