Tag: owl api

将猫头鹰映射到neo4j(java示例)

我想将本体从OWL映射到Neo4j数据库。 我在这里找到了一些例子。 如果我理解得很好,我需要创建包含OWL API库的Java程序。 我不需要任何推理引擎(根据这个: 从OWL本体映射到Neo4j图数据库 )。 我在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 = […]

使用Java中的owlapi 3将manchester语法中的String转换为OWLAxiom对象

我正在用Java编写一个利用OWL API 3.1.0版的程序。 我有一个使用曼彻斯特OWL语法表示公理的String ,我想在OWLAxiom对象中转换此字符串,因为我需要使用addAxiom(OWLOntology owl, OWLAxiom axiom)方法将生成的公理添加到本体中(它是OWLOntologyManager一种方法。 我怎样才能做到这一点?

使用OWL API 4.0检索具有相同对象属性的OWL个体

我在Eclipse 4中使用OWL Api 4.0,在Protege 4中使用简单的本体。我有两个类“Ward”和“Gaurdian”。 这些类的个体通过对象属性isWardOf相关联。 我如何检索与类Gaurdian相关的Ward类的个体。 考虑下图: – 我想要检索Peter和Allice相关的事实或兄弟姐妹,因为他们都与杰克有关。 关于如何使用OWL API 4.0实现此目的的任何粗略线索。 我的完整猫头鹰文件贴有: – <!DOCTYPE Ontology [ ]> >

如何将RDF三元组添加到OWLOntology?

我有一些来自RabbitMQ的数据。 数据格式为三元组,因此队列中的消息可能如下所示: :Tom foaf:knows :Anna 其中:是我要导入数据的本体的标准命名空间,但也可以使用其他来自导入的前缀。 三元组由主语,属性/谓语和对象组成,我知道在每条消息中哪个是哪个。 在接收端,我有一个带有OWLOntology对象的Java程序,该对象表示应该临时存储新到达的三元组以用于推理和其他东西的本体。 我有点设法将三元组变成Jena OntModel但这就是它结束的地方。 我尝试使用OWLRDFConsumer但我找不到任何关于如何应用它的信息。 我的函数看起来像这样: public void addTriple(RDFTriple triple) { //OntModel model = ModelFactory.createOntologyModel(); String subject = triple.getSubject().toString(); subject = subject.substring(1,subject.length()-1); Resource s = ResourceFactory.createResource(subject); String predicate = triple.getPredicate().toString(); predicate = predicate.substring(1,predicate.length()-1); Property p = ResourceFactory.createProperty(predicate); String object = triple.getObject().toString(); object = object.substring(1,object.length()-1); RDFNode o = ResourceFactory.createResource(object); Statement […]