问题标签 [hermit]

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 回答
763 浏览

owl - 传递属性的等价类

我有一个partOf可传递的对象属性。

我想说的是:

  • a partOf Year然后a是一个Term
  • b partOf Term然后b是一个Course

同时:

  • a partOf Knowledge_Group然后a是一个Knowledge_Area
  • b partOf Knowledge_Area然后b是一个Course

为此,我用这个来表示b partOf Term or Knowledge_Areathenb是一个Course

但是当我运行推理器时,我将所有课程列为类的实例,Term并且对于Knowledge_Area

在此处输入图像描述

在此处输入图像描述

如果我不使用orand 设置 Course 仅等效于partOf some Termor partOf some Knowledge_Area(一次单独一个),我不会遇到这个问题。

有没有办法我可以说出我一开始解释的内容,而不是让课程被推断为类型Term

这里有一个最小的例子

0 投票
1 回答
194 浏览

eclipse - NoSuchMethodError OWLDisjointClassesAxioms.getOperandAsList ()

NoSuchMethodError:org.semanticweb.owlapi.model.OWLDisjointClassesAxiom.getOperandsAsList()

我想创建一个无法满足的类并使用 HermiT 推理器列出它。我浏览了一些示例代码并设法编写了一个。

源代码:

控制台输出:

当我尝试查看文件的行号时,发现源附件中缺少一些行号,例如:

POM 文件:

我将 eclipse 配置为使用 java-8-openjdk-amd64。我是 OWLAPI 和 Java 8 流的新手。谁能解释导致此问题的原因以及如何解决?

0 投票
0 回答
38 浏览

sparql - 如何查询从 sparql wh 类推理的个人

我已经在 Protege 中启动了 Fact++ 推理器,现在我想从这个 C 类中查询推理个体。

这个查询没有给出任何结果。我是否可以在 Protege 中从 sparql 查询 rasoned 内容,或者 SPARQL 是否只处理原始内容而不考虑合理的交互。

提前致谢

0 投票
1 回答
108 浏览

owl-api - 如何使用 OWLReasoner 更新本体

我是 OWL API 的新手,我想知道是否有办法使用推理器(HermiT)拾取的所有新关系来更新本体。我找不到教程或太多文档,所以我假设调用

将对新关系进行分类。然后,我不确定如何翻译这些新关系以创建更新的本体。我知道如何手动迭代新关系并在它们不存在于本体中时添加它们,但我正在寻找一种更简单的方法来做到这一点。另外,我不完全确定上述代码是否为我解释了所有新关系,所以请告诉我是否应该进行任何更正。

0 投票
1 回答
427 浏览

python - 重置 sync_reasoner 推理

我在本地本体上使用 owlready2 python 模块。
我已经连接了一个 API 端点,以提交对此本体的查询。
我需要提交一些关于原始本体的查询和一些关于更新(带有推论)本体的查询。

当我使用该sync_reasoner()函数时,本体会根据 HermiT(即默认推理器)的推论进行更新。

我的问题是,推理器所做的推论在对附加函数的不同调用中仍然存在。

是否有强制重置推断属性的解决方法?

谢谢你考虑我的问题,
阿吉里斯

0 投票
0 回答
173 浏览

owl - OWL 推理器可以从父属性继承数据属性范围吗?

OWL 推理器可以从父属性继承数据属性范围吗?

例如,有数据属性“hasEventYear”。它具有域“Person”和范围“xsd:integer”。当添加子属性“hasBirthYear”时,推理器告诉该子属性具有域“Person”。关于范围它什么也没说。

正常吗?

下面的代码已经在 Protege 5 和 Hermit 上进行了测试:

UPD:您可以通过添加以下内容来破解 Protege )):

我的 hasDeathYear 域是“Nothing”,解释如下:

0 投票
1 回答
418 浏览

java - OWLApi:无法创建隐士推理器实例

早上好,我正在尝试编写一个可以管理本体的 java 类,特别是我想找到单个 OWLClass 的所有属性(名称、子类、超类、ecc ..),但我没有设法例如隐士,我不明白为什么。我在 Maven 项目中使用 Eclipse,在 pom 文件中编写的依赖项是从隐士示例中复制的,OWLapi 依赖项也是如此。

java控制台中的错误是:

特别是,无法执行的行是:

这是来自不起作用的方法的代码,我已经检查了隐士文档和各种示例,但没有帮助。

0 投票
0 回答
70 浏览

rdf - OWL 推理器不适用于“最小”基数(但适用于“某些”)

我正在 Protege 中创建一个简单的本体,对基数进行推理存在问题。下面是本体的玩具模型。有、 和的三个实例A,每个实例分别具有 1、2 和 3属性。、和也有三个实例。BChasOwner:OnwerXYZ

用 定义了两个类owl:equivalentClass,一个是:Projectwith owl:someValuesFrom :Owner,一个是:JVwith owl:minQualifiedCardinality "2" ; owl:onClass :Owner

现在推理器正确地归类:JV为 ; 的子类:Project。并且它推断所有三个实例A,BC的实例:Project,但没有一个实例:JV。而从技术上讲,推理器应该将所有三个都作为实例:ProjectB并且C作为:JV( 的实例,因为它们具有 2 和 3 个断言:hasOwner属性。

谁能告诉我我错过了什么?这似乎也不是一个开放世界假设问题,因为我们正在处理最小基数。

0 投票
1 回答
141 浏览

java - 不知道如何使用 Hermit 从 Java 本体中获取对象属性

我试图从一个类中获取一个对象属性,特别是:我试图了解一个类何时是某个其他类的一部分(使用的构造可以在屏幕截图中看到)。

我已经尝试在对象上使用OWL-api函数(对象是“e”)。getObjectPropertiesInSignature()OWLClass

片段的输出是Questa classe non ha object property,所以函数返回一个空的 Set,但是在这种情况下,它应该返回一个具有一个对象属性的 Set:part-Of 对象属性

0 投票
1 回答
31 浏览

owl-api - 如何在 hermiT 中禁用推理

我正在使用 OWL-Api 和 hermiT 推理器,在尝试使用 hermiT 检索 partOf 子类时,它会返回正确的结果,因此 partOf 子类,但它也会返回推断的子类(我不需要)。

这是用于检索 partOf 子类的函数:

在此图像中,提供了操作的实际结果。 给定结果

在此,它显示了我需要的结果。 想要的结果

有没有办法只为此操作禁用 hermiT 推理引擎?