0
我正在使用owl api 4.0,下面的代碼會給我屬於類Animal的所有屬性。如何檢索OWL API 4.0中的數據屬性的子屬性
OWLClass animalCl = df.getOWLClass(IRI.create(ontologyIRI + "Animal"));
NodeSet<OWLNamedIndividual> animalIndl = reasoner.getInstances(animalCl, false);
for (OWLNamedIndividual animalNamedIndl : animalIndl.getFlattened())
{
Set<OWLDataPropertyAssertionAxiom> propAll= myontology.getDataPropertyAssertionAxioms(animalNamedIndl);
for (OWLDataPropertyAssertionAxiom ax: propAll)
{
for (OWLLiteral propertyLit : EntitySearcher.getDataPropertyValues(animalNamedIndl, ax.getProperty(), myontolgoy))
System.out.println("The property " + ax.getProperty() + "has value" + propertyLit);
}
}
我有一個子屬性「propWt」爲每個數據屬性。我用下面的代碼: - 的
NodeSet<OWLDataProperty> properties = reasoner.getSubDataProperties((OWLDataProperty) ax.getProperty(), false);
for (OWLDataProperty mysubproperty : properties.getFlattened())
{
System.out.println("the sub property is " + mysubproperty);
}
代替
the sub property is <http://localhost:3030/BiOnt.owl#propWt>
我得到
the sub property is owl:bottomDataProperty
這裏有什麼問題?
我用這個代碼,並與現在發出 – learner 2014-10-06 09:09:06
相應的修改我的問題,你能否告訴本體,或再現這一問題的片段,以及您所使用的推理? owlapi方面看起來不錯,可能是推理者的錯誤或本體的問題。 – Ignazio 2014-10-06 13:18:41
好的。我的壞我可以檢索子屬性。這個owlbottomDataProperty顯示爲其子屬性未定義的屬性。你的回答確實是對的:) – learner 2014-10-07 19:16:56