RDF图形蕴涵

时间:2013-05-15 09:10:57

标签: xml graph rdf rdfs

我刚刚读到了关于RDF(资源描述框架)的蕴涵概念。任何人都可以告诉我两个RDF图的蕴涵示例并稍微解释一下。

由于

2 个答案:

答案 0 :(得分:9)

假设您有以下内容:

ex:book1 rdf:type ex:Publication . 
ex:book2 rdf:type ex:Article .

所以像 SELECT?s {?s rdf:type ex:Publication} 这样的Sparql查询只返回ex:book1

如果您添加以下事实(或数据集中包含事实的图表):

ex:Article rdfs:subClassOf ex:Publication

如果您的sparql引擎处理蕴含,它应该推断出ex:Article也是ex:Publication

所以 SELECT?s {?s rdf:type ex:Publication} 将返回ex:book1和ex:book2

PS:有关更多信息,示例来自http://www.w3.org/TR/2009/WD-sparql11-entailment-20091022/

答案 1 :(得分:4)

关于RDFS蕴涵的另一个答案是重要的,并且是RDF日常工作的重要部分,但RDFS蕴涵与RDF蕴涵不同。 RDF蕴涵是整个RDF图之间的关系,并提供了一种说法“如果RDF图 x 成立,那么RDF图 y 也是如此。” RDF语义文档的simple entailment section描述了基本的蕴涵:

  

按照传统术语,如果I(E)=真,我满足E,并且如果满足S的每个成员的每个解释也满足E,则RDF图集(简单地)需要图E:在后面的部分中这些概念将适用于其他类别的解释,但在本节中,“蕴涵”应被解释为简单的蕴涵。

这假设理解了图 E 解释,表示为 I(E)。解释将每个属性映射到一组对。例如,解释应该将属性rdfs:subClassOf映射到一对{{ x y ]: x 是一个子类of y }。对于满足图形的解释,解释将属性映射到的对的集合必须至少包含 在图中实际观察到的那些对。例如,如果图表包含

a likes b.
b likes c.

然后,当且仅当I(喜欢)包含对[a,b]和[b,c]时,解释才满足该图。当且仅当满足G1的每个解释也满足G2时,图G1 需要图G2。如果图中没有空白节点,这很简单。

RDF Semantics文档中的链接部分列出了一些简单的结果:

  • 每个图表都需要空图。
  • 每个图都包含每个子图。

当RDF图中有空白节点时,事情会变得更复杂,因为空白节点被解释为存在变量。例如,考虑只有一个三元组的图形(其中_:z是一个空白节点):

a likes _:z

由于_:z是一个存在变量,这意味着当且仅当存在个体 x 时,解释才能满足图形包含一对[a, x ]。如果图形具有空白节点,则用实际术语替换这些空白节点会生成该图形的实例。例如,

a likes b

是图表的实例

a likes _:z

链接文件还提到了蕴涵关系

  • 图表的每个实例都需要图表

这很容易看出:如果解释满足a likes b,那么它对喜欢的解释必须包含[a,b],所以肯定有 x (即 b )使得它包含[a, x ],因此它也满足a likes _:z

这些只是RDF图形蕴涵的一些简单示例。我不知道这种蕴涵实际上在RDF的日常工作中得到了很多用处。更为常见的是RDFS蕴涵(在另一个答案中描述),OWL蕴涵和基于规则的推理。