使用带有推理器的属性链被认为是推理。如果这是通过 SPARQL 查询完成的,是否也被视为推理?

问题描述 投票:0回答:0

我们可以定义如下属性链:

 SubObjectPropertyOf( 
   ObjectPropertyChain( :hasParent :hasParent ) 
   :hasGrandparent 
 )

使用推理器会相应地添加 hasGrandparent 关系。这个过程显然是推理

我可以像这样定义一个 SPARQL 查询,它使用相同的知识,因此(也进行推理)谁是祖父母:

SELECT ?person ?grandparent
WHERE {
    ?person x:hasParent ?x.
    ?x x:hasParent ?grandparent.
}

现在我会得到一个 ?person 和一个 ?grandparent 的列表,并将它们添加到 RDF 数据模型中,具有以下关系:

?person :hasGrandparent ?grandparent

这显然会产生与属性链和推理机相同的结果。

按照这种思路,我会说两者都是一种推理方式。在这两种情况下,我都会推断谁是祖父母。所以我想说这个令人兴奋的 SPARQL 查询可以被视为推理,因为我将隐性知识显化了。在两种情况下都这样做。那么说这是推理而不是推理是错误的吗?有什么理由吗?关于这个的任何来源?

人们经常争辩说 SPARQL 查询只是推理。

owl semantics rdfs reasoning inference-engine
© www.soinside.com 2019 - 2024. All rights reserved.