问题标签 [pellet]
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.
jena - 用 Pellet 推理 Jena 框架中的 SWRL 规则
我正在尝试使用 Jena 框架来编辑使用 Protoge 4.2 构建的现有本体。即更改属性值或添加个人或类,然后进行推理。假设在本体中我们有这样一条规则:hasAge(?p,?age)^swrlb:greaterThan(?age,18)->Adult(?p)。我希望能够更改耶拿一侧的 hasAge 属性,看看某人是否是成年人。你能给我一些关于这个的示例代码吗?任何帮助表示赞赏。
java - 小程序中的 Jena + Pellet + Slick
我正在尝试将 Jena 库、Pellet 和一些 RPG 2d 库 Slick 集成到一个小程序中。所以基本上当我在浏览器中运行小程序时,我得到这个文件权限错误(我使用的罐子都是签名的):
提前致谢, 约阿娜
rdf - sparql 查询中三元组的顺序会影响结果吗?
我正在使用pellet进行sparql 查询,并且根据查询中三元组的顺序得到不同的结果,对吗?
例如,给定以下 N-Triples 数据输入:
以下查询:
回报:
但下面的查询(只是前一个的改变):
我得到以下答案:
我没想到这种行为,我不知道它是否正确,我是那个提出错误查询的人。谁能给我解释一下?
rdf - 使用 Pellet API 加载本体时出现问题
我想用Jena Pellet API
as来推断owl 文件Reasoner
中的新数据。我已经下载了jar 文件pellet.jar并将它附加到我的Eclipse java 项目中。但是,我在运行我的项目时仍然收到此错误消息。
有人可以知道我在这里错过了什么吗?
这是我的代码
这是错误消息
谢谢你的帮助。
版
我正在使用pellet-1.3.zip
从 mindswap.org 下载的文件和从java2s.com下载的pellet.core.jar
文件
jena - 缺少 Pellet-2.3 包?
我Pellet-2.3
从这里下载并安装(包含 Pellet 和 Jena 以及许多其他插件)。在 Eclipse Jena 项目中,我无法访问以下包。
即使已经设置了构建路径。看起来那是那些文件ModelReader.class
并且OWLReasoner.class
是错过的。
有人知道如何处理吗?
谢谢!
jena - 如何获得一个与 Jena 匹配 Objectproperty 的个人?
让我们考虑以下本体,其中、 和PERSON
是NAME
类。并且是 的子类。并且是功能 ObjectProperty。是具有域和范围字符串的 DataTypeProperty。SURNAME
IDENTIFICATION
NAME
SURNAME
IDENTIFICATION
hasSurname
hasName
hasValue
IDENTIFICATION
让我们使用 jena 和 2 人自动实例化这个模型,person1 是“Henry Ford”,person2 是“Harrison Ford”。
为了处理这种重复,需要根据以下模式自动实例化本体,其中个体name1
用于 person1 和 person2。
如何找到NAME
属性hasvalue
为“福特”的类的个体以正确完成实例化?
感谢您的回复。
ontology - Protégé 4 上的 SWRL 选项卡和 Jess 选项卡支持
我需要在 Protégé 4 上将 SWRL 选项卡和 Jess 选项卡添加到我的本体中,但我找不到对 Jess 的任何支持。Protégé 4 是否对 Jess 有任何支持或插件,或者有其他替代品吗?
rules - 用于推断 dataProperty 值的 swrl 规则
我正在尝试测试一个简单的 SWRL 规则。我的本体中有三个类:LivingPlace,它有两个子类 RuralArea 和 City。LivingPlace 是具有布尔范围的 dataProperty hasHospital 的域。
当我使用 Pellet 推理器测试以下规则时,我作为 LivingPlace 成员创建的个人也被推断为 RuralArea 的成员。
LivingPlace(?lp), hasHospital(?lp, false) → RuralArea(?lp)
然而,我真正想做的是与这个推理相反。
农村地区(?lp) → hasHospital(?lp, false)
每当我创建一个 RuralArea 类型的个体时,我希望 Pellet 推断出一个错误的 hasHospital。我怎样才能做到这一点?
java - Pellet 2.3.0 与 OWL API 3.4.3 不兼容?
我想构建一个 Java 应用程序,它将使用 Pellet 查询来查询本体,但我是这个领域的新手,并且遇到了一些兼容性问题。
本体是使用 Protege 4 OWL Editor 构建的。
我已经从这里下载了 owlapi-distribution-3.4.3-bin.jar 文件并将其添加到我的 netbeans 项目中。此外,我从这里找到了 DLExamples.java,它对您入门非常有用。
对于颗粒推理机,我从这里下载了颗粒 2.3.0.zip并在我的 netbeans 项目中添加了颗粒 2.3.0/lib 中的所有文件和文件夹(请注意,我不确定这是否正确在 netbeans 中添加颗粒的方法,但我找不到更好的方法,例如只添加一个 jar 文件)。
我从这里发现,为了将颗粒推理器嵌入到 DLExamples.java,我需要将其第 151 和 152 行替换为“返回新的推理器(管理器)”,其中推理器位于org.mindswap.pellet.owlapi.Reasoner
颗粒库中。当我应用该更改时,netbeans 抱怨说:
我往里面看了看org.mindswap.pellet.owlapi.Reasoner
,发现它的构造函数定义确实是
换句话说,不是将 an 作为参数,org.semanticweb.owlapi.model.OWLOntologyManager
而是采用 an (注意和包org.semanticweb.owl.model.OWLOntologyManager
之间的区别)。owlapi
owl
除非我没有做错什么,否则owlapi和pellet之间显然不兼容。这是不正常的,因为颗粒应该为 owlapi 提供推理,对吗?
关于如何解决这个问题有什么建议吗?我应该切换到不同的推理器吗?我也尝试过 HermiT,但是当我询问应该返回类及其个人的 DL 查询时,它只返回了类。所以我认为 HermiT 可能没有那么强大,所以我决定尝试 Pellet,但没有成功。
有什么建议吗?
提前致谢。
ontology - 捕捉颗粒推理器产生的所有推论
在我的应用程序中执行推理器时遇到问题,我无法捕获推理器生成的推理。它正常执行,printClassTree 向我显示找到了推论,但结果 OWLOntology 没有推论。当前代码:
我应该改变什么?如何捕获推理推理器产生的公理?