Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rdf 寓言推理_Rdf_Reasoning_Allegrograph - Fatal编程技术网

Rdf 寓言推理

Rdf 寓言推理,rdf,reasoning,allegrograph,Rdf,Reasoning,Allegrograph,我越来越熟悉Allegrograph示例中的RDF存储。我感兴趣的部分之一是推理。我从这里举了一个例子:并试图让它发挥作用。 从图表上看,似乎有以下逻辑链: Has-Pet谓词适用于“哺乳动物”对象。例如,如果有一个三元组谓词,则会有另一个三元组rdf:type推断。它由三个rdfs:range定义 “Has Pet”谓词是“Owns”的子属性。例如,如果有一个三元组,则会推断出另一个三元组。它由三个RDF定义:subpertyof “Owns”谓词适用于“Human”对象。例如,如果有一个三元

我越来越熟悉Allegrograph示例中的RDF存储。我感兴趣的部分之一是推理。我从这里举了一个例子:并试图让它发挥作用。 从图表上看,似乎有以下逻辑链:

  • Has-Pet谓词适用于“哺乳动物”对象。例如,如果有一个三元组谓词,则会有另一个三元组rdf:type推断。它由三个rdfs:range定义
  • “Has Pet”谓词是“Owns”的子属性。例如,如果有一个三元组,则会推断出另一个三元组。它由三个RDF定义:subpertyof
  • “Owns”谓词适用于“Human”对象。例如,如果有一个三元组,则会有另一个三元组rdf:type推断。它由三个RDF定义:域
  • 所以我创建了一个显示在Franz网页上的图表

    s,p,o 
    "test://Animal","rdf:type","rdf:class"
    "test://Mammal","rdfs:subClassOf","test://Animal" 
    "test://Dog","rdfs:subClassOf","test://Mammal" 
    "test://hasPet","rdfs:range","test://Mammal" 
    "test://hasPet","rdfs:subPropertyOf","test://owns" 
    "test://owns","rdfs:domain","test://Human" 
    "test://owns","rdf:type","rdf:Property"  
    "test://petOf","owl:inverseOf","test://hasPet"
    "test://Robbie","test://petOf","test://Jans" 
    "test://MrAasman","owl:sameAs","test://Jans"
    
    我希望从这些数据中至少可以推断出两个事实:

  • 罗比是哺乳动物
  • 詹斯是人类
  • 但事情并不是这样的。我不能说推理根本不起作用。至少我看到:

    • 詹斯有宠物罗比
    • 詹斯拥有罗比
    • 阿斯曼有宠物罗比
    • 阿斯曼拥有罗比
    • 狗是一种动物

    为什么它不能推断类型?这是预期的行为吗?

    这不是预期的行为。AllegroGraph的动态RDFS++推理器似乎缺少一些可以通过以下子属性链和逆属性链进行的推断

    我已经为您向Franz提交了一个bug(bug25588),并且正在进行修复,该修复将出现在v6.5.0中

    同时,可以使用Materializer查找所有推断的三元组。您可以在AGWebView中或通过一个客户端API执行此操作。如果你还有其他问题,最好的办法是给allegrograph发电子邮件-support@franz.com这样我们就可以创建一个支持票证

    我们无法将这些修复程序添加到AllegroGraph v6.4.5中。如果您向我们提交支持请求,我们可以确保在v6.5.0发布时通知您