[英]Is a RDF Triple a RDF Statement?
正如问题的主题所问,2是同一件事吗? 它们可以互换吗? 如果没有,请通过示例解释差异或提供说明。
引用RDF Concepts规范(RDF 1.1草案版本) :
抽象语法的核心结构是三元组的集合,每个三元组由主语,谓词和对象组成。 ...... RDF三元组的断言表示由谓词表示的某些关系在主语和宾语所表示的资源之间存在。 对应于RDF三元组的此语句称为RDF语句。
换句话说:由主语,谓语和宾语组成的抽象结构称为“三元组”。 三元组由IRI,空白节点和/或文字组成。 每个三元组都表达了一些关于世界的主张或事实 - 它说两件事情彼此有某种关系。 关于世界的这种主张是三重中编码的“声明”。
所以,严格说来是有区别的。 但这是一个非常微妙的区别,通常这些术语只是可以互换使用。
是的,在RDF中, 语句基本上与三元组 (或三元 组 )相同。
但是,还有另一个概念称为陈述陈述,在这种情况下,你必须考虑到三元组可以由不同的实体(如人/组织,而不是XML实体)陈述的事实。 在这样的上下文中,三元组(主语,谓语,宾语)不是唯一的,应该以不同的方式描述,具体取决于谁说明它。
整个主题有点令人难以置信。 我建议阅读RDF Interest邮件列表中的一个主题摘要 (带上点心)。 它归结为RDF本身的语义描述。
总而言之,这完全取决于你所说的三重奏 。 无论是抽象概念还是实际陈述 。 如果这是第一种情况,我认为可以安全地假设三元组和语句是可以互换的。 大多数情况下,当使用RDF时,它是第一种情况。
我曾经在Jena邮件列表上遇到过一些问题,同时对Jena Java代码中的Statement-versus-Triple区别(或类似于Node-versus-RDFNode的区别)表示不满,并在博客上发表了相关文章 。 这是邮件列表中的要点 :
我们发现Model / Statement / RDFNode(API)作为一个应用程序接口工作,但它不适合存储抽象,而Graph / Triple / Node(SPI)在规则性更有价值的地方工作得更好。 也就是说,我们将面向应用程序的设计与面向子系统的设计分开。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.