有人可以解释像 Pellet/默认 OWL Reasoner 这样的 DL Reasoner 和像 Jess 这样的规则引擎之间的区别吗?及其应用?

谢谢。

有帮助吗?

解决方案

这两种颗粒和杰斯可以主要被用作语义推理。但是杰斯是用于一些专家所需要的问题提供答案基于规则的专家系统。此外杰西有自己的语言来创建规则。即我们称之为杰斯规则。颗粒采用耶拿API或SWRL定义的规则。因此,与杰斯,你可以编写更复杂的规则。如果你想要做的这些工具之间的替代品,你可能需要重新编写一些规则,每个类型。

http://en.wikipedia.org/wiki/Semantic_reasoner

在这个链接可以找到语义推理之间的比较表。我还没有使用SweetRules推理器之前,但它似乎支持SWRL和杰斯规则,因此这个推理机可以在杰斯和颗粒之间的交叉是有益的。

其他提示

规则引擎可以除了编码分离的规则的定义,并且把推理内的规则引擎,这可能带来一些优点,如重复使用的规则的知识的过程。

推理机通常会实现更受限制的规则功能(如果有的话) 单调的 推理。当人们说“理性者”时,他们通常的意思是 猫头鹰 Reasoner,因为它是基于 RDF 的可互操作 W3C 推荐,并且可能根本不支持使用所有设置的规则 公理和事实.

另一方面,诸如 CLIPS、Jess 或 Drools 之类的规则引擎具有完整的、独立的非标准编程语言,对可表达的内容几乎没有限制,并且不需要单独的功能部分 - 因此可能会导致缓慢且缓慢的结果。由于给予程序员的自由而导致系统设计不佳。

从技术上讲,可以使用任何规则引擎来代替推理器。作为一个具体的生产示例,可以替换 颗粒流口水 使用 Drools-SWRLAPI 用于 OWL/RDF 推理。Jess 也有 SWRL API。然而,由于 Pellet 是一个内置 OWL 支持的专用推理器,它可以神奇地推断一切并通过 API 或 SPARQL 回答问题 - 而 Drools 需要特殊设置和大量编程来集成 Java API。

另一个现实世界的差异是规则引擎主要用作 商业管理系统 (在 金融科技 例如)而推理器则用于语义数据存储或知识管理应用程序,例如新闻/媒体机构中的商品属性或关系。

截至 2016 年,Pellet 的规则支持仅限于 SWRL,而 Drools-SWRLAPI 支持 SWRL 和 SQWRL(均为单调)。SWRL 序列化本身是源自 Protege SWRLTab 插件的“事实上的”标准。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top