问题标签 [swrl]
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 - 如何在 sqwrl 查询中编写 OR 操作
对于 sqwrl 查询中的 AND 操作,它就像:
Symptom(fever) ^ Symptom(vomiting) ^ Disease(?y) ^ hasSymptom(?y,fever) ^ hasSymptom(?y,vomiting) -> sqwrl:select(?y)
从上面的规则,它是选择具有两种症状的疾病。sqwrl 查询中的 OR 操作呢?我想选择有症状发烧或有呕吐症状的疾病?任何帮助将不胜感激。
owl - 如何在 sqwrl 查询中从 UNION 操作中选择元素
我可以选择 s3 的大小,它在规则 1 中给了我正确的答案。但是,我想选择 s3 中的所有元素。我尝试了规则 2,但它给了我异常“运行 SQWRL 查询时出错:运行 Drools 规则引擎时出错”
我的目标是检索所有具有呕吐或发烧症状的疾病。任何帮助将不胜感激。
规则1:
规则 2:
java - 如何使用自定义 SWRL 内置插件扩展 Pellet 2.4.0?
我已经使用 SWRLAPI 的 SWRLBuiltInBridge 组件完成了这项工作: https ://github.com/protegeproject/swrlapi/wiki/SWRLBuiltInBridge
但是,在我的 Java 代码中,我还将 Pellet Reasoner 与 OWLAPI 一起使用。每当我使用推理器时,它会在发现内置未知的 SWRL 规则时生成警告。我知道我可以在推理器中禁用规则检查,并在我想运行规则时使用 SWRLAPI。
但这似乎不切实际......因为在我使用推理器之前,我必须在每次修改本体之后运行规则。
我看过一个深入研究这个问题的博客页面,但可能已经过时: https ://semwebguy.wordpress.com/2011/01/04/how-to-extend-pellet2-2-2s-swrl-built-支持您的自定义内置/
此外,与 SWRLAPI(例如 Abox 对象是一个参数)相比,创建内置的方式(根据博客)是不同的。
还有另一种方法可以做到这一点吗?或者是否可以将 Pellet 与 SWRLBuiltInBridge 连接起来?
protege - Protege 3.4.8 中的 SWRLTab 和 JessTab
我正在使用 Protege 3.4.8,我想执行一些规则(使用 SWRL 和 Jess)。我在 protege 中为我的本体创建了一些规则,但是当我单击 SWRLJess 选项卡按钮(屏幕截图 - Protege 3.4.8 SWRL 选项卡。)时,什么也没有发生。
有谁知道 jess 是否还在 Protege 工作?有人可以帮助我吗?
非常感谢你的帮助!
sparql - 如何将 SWRL 词汇表添加到 Jena 框架中
嗨,我是本体初学者,
我已经构建了一个本体,并使用 Protege 保存了启用规则的 RDF 文件。我将构建一个从本体获取一些输入的 Web 服务。可以通过查询 swrl:something swrlb:something 标签下的参数、类和属性谓词来提供输入。
我正在使用 java 语言并尝试 Jena 框架。但是没有与 SWRL 相关的词汇表,即使我已经导入了规则推理器[我不确定导入推理器是否会添加 SWRL 词汇表]。
是否有任何提示可以将 SWRL 词汇表添加到 Jena 框架中?
我还没有研究耶拿规则,我相信它与 SWRL 不同。
谢谢,
netbeans - 如何在 netbeans 中使用 OWL API 将其连接到 proteje 和 SWRL 以读取 OWL 文件?
我可以在我的 netbeans 库中添加 OWL API 现在我想与 proteje 建立连接并能够在我的本地计算机中读取 owl 文件。你有一些与之相关的源示例代码吗?
谢谢
prolog - 递归:从 Prolog 到 SWRL
你知道如何在 SWRL 中翻译递归吗?例如,这种类型的 Prolog 规则:(祖先是父母或父母的祖先。
sparql - 如何在特定标签内查询?
嗨,我是本体初学者,
我已经构建了一个本体,并使用 Protege 保存了启用规则的 RDF 文件。我将构建一个从本体获取一些输入的 Web 服务。可以通过查询 swrl:something swrlb:something 标签下的参数、类和属性谓词来提供输入。
例如:IF age<5 & weather='Windy' & season='Winter' THEN InfluenzaRisk=High
我需要一个查询来检索age<5 & weather='Windy' & season='Winter'
和另一个查询来检索InfluenzaRisk=High
.
作为 SWRL,前件放在这个标签 swrl:body中,后件放在这个标签 swrl:head 中。
我在下面尝试了这些查询,但它在前因和后因中都有参数。我期待有一种方法可以仅在 swrl:body 或 swrl:head 中缩小查询搜索的范围。
有没有办法做到这一点?
下面我附上本体中的一条最短规则。
owl - Protege 使用 swrl:equal 比较数据类型属性的值
我正在构建 3 个类的本体:
- 留言
- 火腿
- 垃圾邮件
2个数据属性,域:消息和范围xsd:字符串:
- 有兴趣
- 有类别
2 SWRL 规则:Message(?x),hasInterest(?x,?a),hasCategory(?x,?b), swrl:equal(?a,?b) ->Ham(?x)
Message(?x),hasInterest(?x,?a),hasCategory(?x,?b), swrl:notEqual(?a?b) ->Spam(?x)
我想将 Message 类的实例分类为 Spam 或 Ham 类;如果 hasCategory 值(邮件类别)等于 hasInterest 值(用户兴趣),则该邮件为 ham 否则为垃圾邮件
如果我有 1 个消息类别和 1 个兴趣,这可以正常工作: m1 hasInterests sports m1 hasCategory sports
那么,如果我有一个 iterests 或类别列表,例如:每条消息有超过 1 个兴趣{体育、电影}每条消息有超过 1 个类别 {电影、政治}
我想说如果两个列表相交那么消息是火腿所以 swrl:equal 不起作用我如何定义它来比较所有个人
我所做的是重复 hasInterests 和 hasCategory 取决于我的意思是手动定义列表的各个值并且它有效,是否有另一种使用字符串列表的自动方式以及如何在 swrl 中比较它们?
netbeans - 如何从 netbeans 调用 SWRL 规则并在 netbeans 中检索数据。
关于从 netbeans 调用 SWRL 规则并在 netbeans 中检索数据,我真的需要您的帮助。我的 netbeans 中有 serverlet 和 jsp 页面,我也有 owl-api。我的 protege 中有本体,side protege 中也有 2 个简单的 SWRL 规则。
我是这个领域的新手,需要知道如何调用类和从 owlapi 以及如何向 protege 发送请求以及如何通过 serverlet 返回 netbeans 中 swrl 规则的结果。
如果您能帮助我,将不胜感激
真挚地
——迈赫迪·塔拉比