9

正如问题的主题所问的那样,这两个是一回事吗?它们可以互换吗?如果不是,请解释差异或举例说明。

4

3 回答 3

9

引用RDF 概念规范(RDF 1.1 草案版本)

抽象语法的核心结构是三元组的集合,每个元组由一个主语、一个谓语和一个宾语组成。... RDF 三元组的断言表明谓词表示的某种关系在主语和宾语表示的资源之间保持不变。对应于 RDF 三元组的该语句称为 RDF 语句。

换句话说:由主语、谓语和宾语组成的抽象结构被称为“三元组”。三元组由 IRI、空白节点和/或文字组成。每个三元组都表达了关于世界的一些主张或事实——它表示两件事彼此之间存在某种关系。这种关于世界的主张是编码在三元组中的“陈述”。

所以,严格来说是有区别的。但这是一个非常微妙的区别,而且这些术语通常可以互换使用。

于 2012-08-21T21:34:53.420 回答
7

是的,在 RDF 中,语句基本上与三元组(或3-tuple)相同。

但是,还有另一个概念称为陈述的陈述,在这种情况下,您必须考虑一个事实,即三元组可以由不同的实体陈述(如在人/组织中,而不是 XML 实体中)。在这种情况下,三元组(主语、谓语、宾语)不是唯一的,应该根据谁声明它而进行不同的描述。

整个主题有点令人难以置信。我建议阅读RDF Interest 邮件列表中的这个主题的摘要(带点零食)。它归结为 RDF 本身的语义描述。

总而言之,这完全取决于您的意思三重。无论是抽象的概念还是对它的实际陈述。如果是第一种情况,我认为可以安全地假设三元组语句是可以互换的。而且大多数时候,在使用 RDF 时,它是第一种情况。

于 2012-08-20T20:18:53.960 回答
3

我曾经在 Jena Java 代码中的 Statement-versus-Triple 区别(或类似的 Node-vs-RDFNode 区别)摸不着头脑时遇到了 Jena 邮件列表上的一些东西,并在博客上写了一篇关于它的文章。以下是邮件列表中的要点

我们发现 Model/Statement/RDFNode(API)作为应用程序接口工作,但它不适合存储抽象,而 Graph/Triple/Node(SPI)在规律性更有价值的地方工作得更好。也就是说,我们将面向应用程序的设计与面向子系统的设计分开。

于 2013-01-02T19:27:52.720 回答