问题标签 [owl-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
323 浏览

owl - 是否有一个三重存储来管理 OWL 作为命名图并与 OWL-api 兼容?

我正在从事一个专注于 OWL 的项目。最近,我们提出了使用命名图方法来处理相互连接的多个 owl 本体的需求。

关于这个问题我有两个问题:

1-有没有支持它的工具(我想是三重商店)?

2-是否有任何工具可以让我继续使用 OWL API,在运行时更新我的​​本体,同时为我提供猫头鹰商店设施?

0 投票
1 回答
1362 浏览

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

我想将本体从 OWL 映射到 Neo4j 数据库。我在这里找到了一些例子。

如果我理解得很好,我需要创建包含 OWL API 库的 Java 程序。我不需要任何推理引擎(据此:Mapping from an OWL ontology to Neo4j graph database)。

我在 Eclipse 中创建了项目添加 OWL API(和oboformat)库并粘贴代码

我有一个错误:new Reasoner(ontology); - 没有类推理者,我不明白我是否需要使用像 Hermit 或 Pellet 这样的推理器推理引擎?

我在 Transaction tx = db.beginTx(); 行中也遇到了错误。我需要使用 spring 框架来运行这个例子吗?

0 投票
1 回答
398 浏览

semantic-web - OWLAPI 不返回注释和实例

在 OWLAPI 中,通过 owl:imports 语句导入的本体存在问题。问题是导入的本体中包含的类和类注释的实例没有被检索和返回。

可以说我有本体房间和本体建筑物。

然后在本体房间中,我有以下语句,该语句应该将建筑物本体加载到房间本体中。

然后在 OWLAPI 我加载本体房间(应该自动包含建筑物)

之后,从 Buildings 本体中检索一个类仍然可以按预期工作:

当我想获取类 Building 的实例(这些实例的定义包含在导入的 Buildings 本体中)时,它什么也不返回:

变量“实例”现在为空。

如果此类类的定义包含在建筑物本体中,则类注释也存在同样的问题。

在以下情况下,我能够使其工作:

  1. 我将实例定义直接移动到 Rooms 本体(这在生产中是不可能的,因为无论如何我都会有 2 个独立的本体)
  2. 我使用 Reasoner 类的函数(reasoner.getInstances(buildingClass, true)从两个本体返回实例)
  3. 我将导入的本体传递给 getIndividuals 函数而不是主(房间)本体(buildingClass.getIndividuals(manager.getImports(roomsOntology))

解决方法没有。1 不可能为我制作(仅用于测试目的)。当我需要检索注释时,2 号和 3 号不起作用,因为无法将多个本体传递给OWLClass.getAnnotations函数,而且 Reasoner 也没有获取注释的函数。

无论如何,我认为如果没有这些变通方法,一切都应该工作,因为所有本体,包括导入的本体,在开始时都加载了manager.loadOntologyFromOntologyDocument函数。

0 投票
1 回答
99 浏览

java - 在java中使用opencyc owl时出现DisjointClasses错误

我目前正在研究一个尝试将 openCYC 用作 KB 的自然语言处理项目。目前,我只是尝试加载本体并使用 java owl api v3.4.8 和 HermiT 实例化推理器,但是每当我尝试实例化推理器时,都会出现错误

线程“主”java.lang.IllegalArgumentException 中的异常:错误:已解析 DisjointClasses(http://sw.opencyc.org/concept/Mx4rEHSj4Q0sQVGnAmZNRRJ20Q)。

当前代码:

这是否意味着opencyc本体本身存在问题?还是我做错了什么?

0 投票
1 回答
1211 浏览

java - 使用 Java 中的 owlapi 3 将曼彻斯特语法中的字符串转换为 OWLAxiom 对象

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

0 投票
1 回答
5609 浏览

neo4j - 如何将 .OWL 文件导入 Neo4J?

我一直在使用 Neo4J 来感受使用相关数据是多么容易。到目前为止,我已经使用 Neo4J 社区浏览器创建节点并建立它们之间的关系。

我已经使用 protege a link开发了一个本体!现在,我有一个巨大的本体文件(.owl 文件)。我想将其上传到 Neo4J 以执行查询并查找节点之间的潜在关系。

如果我能得到任何帮助,我会很高兴。

谢谢。

0 投票
1 回答
86 浏览

java - 如何确定一个客体属性断言的主客体?

在OWLAPI中,当你得到一个OWLAxiom类型的签名时AxiomType.OBJECT_PROPERTY_ASSERTION,如何知道它的哪个实体是主语,哪个是宾语?

0 投票
1 回答
365 浏览

android - 无法使用owl api将owl文件加载到android项目

我一直在尝试加载我在 Protégé 中制作的 OWL 文件。我将 OWL API 3.4.3 导入我的项目并将sample.owl文件传递到原始文件夹,但是当我尝试加载 OWL 文件时,它不起作用。没有错误,但我只是收到此消息

不幸的是,sampleproject 已停止

这是正在使用的代码部分。当我在标准 Java 环境中尝试代码时,它可以正常工作。

0 投票
0 回答
125 浏览

java - OWL:Nothing dl 查询问题

我编写了一个接口,例如给出了 Pizza 本体,它可以区分断言和推断的公理。例如,假设Class: Food SubClassOf: Thing它会告诉你它是推断出来的。我的问题是,如果我有一个无法满足的类 TomatoTopping,并且我想知道Class: TomatoTopping SubClassOf: Nothing是断言、推断还是没有,我会得到公理不存在的响应。虽然我可以在层次结构中的 Nothing 下看到 TomatoTopping。问题是什么?我不能查询这样的公理还是我的逻辑有缺陷?

这是识别Class: Food SubClassOf: Thing但不识别的代码Class: TomatoTopping SubClassOf: Nothing

我想我发现了问题所在。曼彻斯特语法解析器需要一个数据工厂。

由于经理没有被推理机分类,OWL:Nothing 不会出现。您知道一种对经理进行分类然后提取数据工厂的方法吗?

0 投票
1 回答
767 浏览

java - 通过OWL API访问本体

我想使用 Eclipse 通过 OWL API 访问我的本体和 SWRL 规则。任何人都可以提供可以告诉我该怎么做的确切程序吗?

我尝试了以下代码,但似乎没有得到任何响应。请记住,我的 Java 技能很差。

我需要一个关于如何处理和解决这个问题的确切程序。

我已经拥有的代码是: