2

都柏林核心词汇表表达了两个术语:

这两项是相反的,而:

if A references B, then B is referenced by A

那么在图表中是否需要(完全或在一定程度上)始终插入和表达这两个术语?

<http://example.org/A> dcterms:references <http://example.org/B>
<http://example.org/B> dcterms:isReferencedBy <http://example.org/A>

如果不需要,代表什么考虑应该同时使用,或者只是两者之一?

4

1 回答 1

1

最初的问题说是传递的,但应该说是逆向的。问题已得到纠正。答案的相关部分从第二段开始。据我所知,这些属性不是可传递的。属性p是可传递的,这意味着对于所有abc,如果p(a,b)p(b,c),则p(a,c)。我认为不一定是“如果a引用bb引用c,那么a引用c ”。你所描述的关系是references并且isReferencedBy逆数。一个属性p是一个属性q的逆,当且仅当q(b,a)时,对于所有abp(a,b ) 。

这些属性的名称确实清楚地表明它们是彼此相反的,尽管我还没有找到权威的参考资料来说明这一点。通常,数据源只会在一个方向上说明关系。某种推理器(这可能只是一些应用程序逻辑——它不需要是成熟的 RDFS 或 OWL 推理器)应该负责在这两个属性之间建立连接。例如,如果您正在编写一个应用程序来构建引用图,那么您的应用程序应该使用任一属性查找三元组,并酌情使用该数据。

在 RDF 中,通常很容易声明可以表达“a 引用 b”关系的三元组中的任何一个——您可以断言a references bb isReferencedBy a. 但是,在某些格式中,您将没有那么大的灵活性。例如,如果您使用 HTMLMETA标记来描述 HTML 文档,则三元组的主题是固定的,因此您需要references枚举文档引用的内容,并isReferencedBy枚举引用文档的内容。但是,如果您在纯 RDF 中工作并且可以编写任意三元组,那么您实际上只需要一个属性,尽管在某些情况下使用这两个属性可能会更清晰、更简洁。例如,可能认为写得更清楚:

A references B ;
  isReferencedBy C, D .

代替

A references B .
C references A .
D references A .
于 2013-06-03T18:51:20.507 回答