【问题标题】:How to use Transitive Reasoner with Jena?如何将传递推理器与 Jena 一起使用?
【发布时间】:2015-09-19 16:59:11
【问题描述】:

我想使用 Jena 设置 TransitiveReasoner,以从模式和数据集创建新的推理模型。它适用于 RDFS 推理器,但不适用于 TransitiveReasoner。

这是我第一次体验推理;我查看了 Jena 推理支持和其他教程,但无法解决我的问题。

这是我在 java 中的测试代码:

import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.*;
import com.hp.hpl.jena.reasoner.*;
import com.hp.hpl.jena.vocabulary.*;

public class TestInference 
{

    public static void myTest() throws IOException
    {
      String NS = "testInference:";
      OntModel schema = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM, null);
      OntClass m = schema.createClass(NS + "Mention");
      OntClass pm = schema.createClass(NS + "PersonMention");
      pm.addProperty(RDFS.subClassOf, m);

      Model data = ModelFactory.createDefaultModel();
      Resource r = data.createResource(NS+"alberto");
      r.addProperty(RDF.type, pm);

      Reasoner rdfsReasoner = ReasonerRegistry.getRDFSSimpleReasoner();
      Reasoner transReasoner = ReasonerRegistry.getTransitiveReasoner();

      System.out.println("\n===== RDSF =====");
      InfModel rdfsInf = ModelFactory.createInfModel(rdfsReasoner, schema, data);
      rdfsInf.write(System.out, "TURTLE");

      System.out.println("\n===== Trans =====");
      InfModel transInf = ModelFactory.createInfModel(transReasoner, schema, data);
      transInf.write(System.out, "TURTLE");
}

public static void main(String[] args) throws IOException
{
    myTest();
}

尝试更改OntModelSpec 无济于事。

我做错了什么?

提前感谢您的帮助。

【问题讨论】:

    标签: java jena inference-engine


    【解决方案1】:

    TransitiveReasoner 仅处理 RDFS subClassOf 和 RDFS subPropertyOf 的传递性。不提供rdf:type的步骤。

    A subClassOf B . B subClassOf C => A subClassOf C
    

    但不是这部分:

    x type T . T subClassOf S => x type S
    

    https://jena.apache.org/documentation/inference/#transitive

    【讨论】:

      猜你喜欢
      • 2014-09-07
      • 2013-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-26
      • 1970-01-01
      • 1970-01-01
      • 2016-02-29
      相关资源
      最近更新 更多