【问题标题】:OWL Individual in javajava中的OWL个体
【发布时间】:2011-11-15 14:41:31
【问题描述】:

我正在尝试通过 Eclipse 访问本体。我使用 owl-api。我在 Protegé 中创建了我的本体,但是我想通过代码创建和分类新的个体。这怎么可能?我用谷歌搜索了所有内容,但找不到任何有用的信息。

宏观例子: - 具有实体“B”、“C”和“D”的本体“a”。 - 我创建了一个单独的“z”,我想知道它是否可以是“B”、“C”、“D”的一部分,或者不是任何实体。

我面临 3 个问题: - 我不知道如何创建一个类型的个体 - 我不知道如何填写个人的数据属性。 - 我不知道如何让推理器工作(好吧,我还没有尝试过,因为我无法执行前面的步骤)。

你能帮帮我吗?提前致谢!

努诺

【问题讨论】:

    标签: java ontology owl


    【解决方案1】:

    OWL API 在这里有很酷的文档:http://owlapi.sourceforge.net/documentation.html

    所以,要创建一个类的个体:

    OWLClass person = dataFactory.getOWLClass(":Person", pm);
    OWLNamedIndividual mary = dataFactory.getOWLNamedIndividual(":Mary", pm);
    OWLClassAssertionAxiom classAssertion = dataFactory.getOWLClassAssertionAxiom(person, mary);
    manager.addAxiom(ontology, classAssertion);
    

    添加一些属性:

    OWLIndividual matthew = dataFactory.getOWLNamedIndividual(IRI.create(base + "#matthew"));
    OWLIndividual peter = dataFactory.getOWLNamedIndividual(IRI.create(base + "#peter"));
    OWLObjectProperty hasFather = dataFactory.getOWLObjectProperty(IRI.create(base + "#hasFather"));
    OWLObjectPropertyAssertionAxiom assertion = dataFactory.getOWLObjectPropertyAssertionAxiom(hasFather, matthew, peter);
    

    也有一个推理示例,但它更长,所以请检查自己。

    【讨论】:

    • 如果玛丽有父亲,我该怎么办?
    猜你喜欢
    • 1970-01-01
    • 2016-06-11
    • 1970-01-01
    • 2014-01-27
    • 2014-05-03
    • 2013-01-01
    • 2013-05-12
    • 2018-03-18
    • 1970-01-01
    相关资源
    最近更新 更多