我正在尝试通过Eclipse访问本体。我使用owl-api。我在Protegé中创建了我的本体,但是我想通过代码来创建和分类新的个体。那件事怎么可能?我用谷歌搜索了所有的东西,但我找不到任何有用的信息。
宏示例:-本体'a‘,它具有实体'B','C’和'D‘。-我创建了一个单独的'z‘,我想知道它是'B','C','D’的一部分,还是不是实体的一部分。
我面临三个问题:-我不知道如何创建一个类型的个体-我不知道如何填充该个体的数据属性。-我不知道如何让推理机工作(嗯,我还没有尝试过,因为我不会做前面的步骤)。
你能帮帮我吗?提前感谢!
努诺
发布于 2012-01-07 20:18:47
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);也有一个推理示例,但它更长,所以请检查一下自己。
https://stackoverflow.com/questions/8138084
复制相似问题