问题标签 [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.
owl - 是否有一个三重存储来管理 OWL 作为命名图并与 OWL-api 兼容?
我正在从事一个专注于 OWL 的项目。最近,我们提出了使用命名图方法来处理相互连接的多个 owl 本体的需求。
关于这个问题我有两个问题:
1-有没有支持它的工具(我想是三重商店)?
2-是否有任何工具可以让我继续使用 OWL API,在运行时更新我的本体,同时为我提供猫头鹰商店设施?
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 框架来运行这个例子吗?
semantic-web - OWLAPI 不返回注释和实例
在 OWLAPI 中,通过 owl:imports 语句导入的本体存在问题。问题是导入的本体中包含的类和类注释的实例没有被检索和返回。
可以说我有本体房间和本体建筑物。
然后在本体房间中,我有以下语句,该语句应该将建筑物本体加载到房间本体中。
然后在 OWLAPI 我加载本体房间(应该自动包含建筑物)
之后,从 Buildings 本体中检索一个类仍然可以按预期工作:
当我想获取类 Building 的实例(这些实例的定义包含在导入的 Buildings 本体中)时,它什么也不返回:
变量“实例”现在为空。
如果此类类的定义包含在建筑物本体中,则类注释也存在同样的问题。
在以下情况下,我能够使其工作:
- 我将实例定义直接移动到 Rooms 本体(这在生产中是不可能的,因为无论如何我都会有 2 个独立的本体)
- 我使用 Reasoner 类的函数(
reasoner.getInstances(buildingClass, true)
从两个本体返回实例) - 我将导入的本体传递给 getIndividuals 函数而不是主(房间)本体(
buildingClass.getIndividuals(manager.getImports(roomsOntology))
)
解决方法没有。1 不可能为我制作(仅用于测试目的)。当我需要检索注释时,2 号和 3 号不起作用,因为无法将多个本体传递给OWLClass.getAnnotations
函数,而且 Reasoner 也没有获取注释的函数。
无论如何,我认为如果没有这些变通方法,一切都应该工作,因为所有本体,包括导入的本体,在开始时都加载了manager.loadOntologyFromOntologyDocument
函数。
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本体本身存在问题?还是我做错了什么?
java - 使用 Java 中的 owlapi 3 将曼彻斯特语法中的字符串转换为 OWLAxiom 对象
我正在用 Java 编写一个利用 OWL API 3.1.0 版的程序。我有一个String
使用 Manchester OWL 语法表示公理的,我想将此字符串转换为OWLAxiom
对象,因为我需要使用该方法将生成的公理添加到本体中 addAxiom(OWLOntology owl, OWLAxiom axiom)
(它是 的方法OWLOntologyManager
)。我怎样才能做到这一点?
neo4j - 如何将 .OWL 文件导入 Neo4J?
我一直在使用 Neo4J 来感受使用相关数据是多么容易。到目前为止,我已经使用 Neo4J 社区浏览器创建节点并建立它们之间的关系。
我已经使用 protege a link开发了一个本体!现在,我有一个巨大的本体文件(.owl 文件)。我想将其上传到 Neo4J 以执行查询并查找节点之间的潜在关系。
如果我能得到任何帮助,我会很高兴。
谢谢。
java - 如何确定一个客体属性断言的主客体?
在OWLAPI中,当你得到一个OWLAxiom
类型的签名时AxiomType.OBJECT_PROPERTY_ASSERTION
,如何知道它的哪个实体是主语,哪个是宾语?
android - 无法使用owl api将owl文件加载到android项目
我一直在尝试加载我在 Protégé 中制作的 OWL 文件。我将 OWL API 3.4.3 导入我的项目并将sample.owl
文件传递到原始文件夹,但是当我尝试加载 OWL 文件时,它不起作用。没有错误,但我只是收到此消息
不幸的是,sampleproject 已停止
这是正在使用的代码部分。当我在标准 Java 环境中尝试代码时,它可以正常工作。
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 不会出现。您知道一种对经理进行分类然后提取数据工厂的方法吗?
java - 通过OWL API访问本体
我想使用 Eclipse 通过 OWL API 访问我的本体和 SWRL 规则。任何人都可以提供可以告诉我该怎么做的确切程序吗?
我尝试了以下代码,但似乎没有得到任何响应。请记住,我的 Java 技能很差。
我需要一个关于如何处理和解决这个问题的确切程序。
我已经拥有的代码是: