我想将本体从OWL映射到Neo4j数据库。我找到了一些例子here。
如果我理解得很好,我需要创建包含OWL API库的Java程序。 我不需要任何推理引擎(根据:Mapping from an OWL ontology to Neo4j graph database)。
我在Eclipse中创建了项目添加OWL API(和oboformat)库并粘贴代码
private void importOntology(OWLOntology ontology) throws Exception {
OWLReasoner reasoner = new Reasoner(ontology);
if (!reasoner.isConsistent()) {
logger.error("Ontology is inconsistent");
// Throw your exception of choice here
throw new Exception("Ontology is inconsistent");
}
Transaction tx = db.beginTx();
try {
...
}
}
我有一个错误:新推理(本体论); - 没有类推理器,我不明白我是否需要使用Hermit或Pellet这样的推理器推理引擎?
我在行Transaction tx = db.beginTx();中也有错误。我是否需要使用spring框架来运行此示例?
答案 0 :(得分:1)
推理等级在Hermit OWL Reasoner。要解决此问题,您应该将HermiT.jar文件添加到项目中。
此示例中的事务类来自neo4j库(org.neo4j.graphdb.Transaction)。