java中的OWL个体

java中的OWL个体,java,ontology,owl,Java,Ontology,Owl,我正试图通过Eclipse访问本体。我使用OWLAPI。我用Protegé创建我的本体论,但是我想通过代码创建和分类新的个体。这怎么可能?我用谷歌搜索了所有东西,但找不到任何有用的信息 宏示例: -本体“a”,其中包含实体“B”、“C”和“D”。 -我创建了一个单独的“z”,我想知道它是否可以是“B”、“C”、“D”的一部分,或者不可以是任何实体 我面临三个问题: -我不知道如何创建一个类型的个人 -我不知道如何填写个人的数据属性。 -我不知道如何让推理机工作(好吧,我还没有尝试过,因为我不能完

我正试图通过Eclipse访问本体。我使用OWLAPI。我用Protegé创建我的本体论,但是我想通过代码创建和分类新的个体。这怎么可能?我用谷歌搜索了所有东西,但找不到任何有用的信息

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

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

你能帮我吗?提前谢谢


Nuno

OWL API在这里有很酷的文档:

因此,要创建一个类的个体:

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);

还有一个推理者的例子,但它更长,所以请检查自己

如果玛丽有父亲,我该怎么办?