【问题标题】:What is the purpose of SWRL rules?SWRL 规则的目的是什么?
【发布时间】:2011-07-23 09:47:16
【问题描述】:

谁能解释 SWRL 规则的目的。据我了解,SWRL 规则与 SQL 中的存储过程相同。我制定了一些规则,但不知道如何通过查询在我的应用程序中使用它们。我不知道我是否以正确的方式思考 SWRL 规则的用途。请告诉我正确的使用方法。

看看这条规则:

Patient(?x) ^ hasValue_heartrate(?x, >160) -> Sick(?x)

在我的本体中,我有 Patient 类,但没有 Sick 类,甚至没有 hasValue_heartrate 属性。那么我应该创建这些吗? 或者如何在我的本体中使用上述规则?

【问题讨论】:

    标签: rules semantic-web owl knowledge-management swrl


    【解决方案1】:

    规则是一种表达可以从数据集中推断出的附加内容的方式。一些推论可以从本体模型本身收集,但其他可能无法用本体语言(通常是 OWL)表达,并且需要更多功能表示。您应该注意,SWRL 从未完全成为标准,并且开始不鼓励使用它。请参阅 answers.semanticweb.com 上的问题 latest best support for SWRL

    编辑:

    您应该考虑改用 SPIN。引用this thread:

    现在 SPIN 是 W3C 提交,它已经达到了相同的标准状态 作为SWRL。此外,SPIN 对 SWRL 具有关键优势:

    • 它使用 SPARQL - 每个 RDF 存储都支持的标准
    • 与 SWRL 不同,SPIN 是一种积极的努力。 SWRL 已被 RIF 淘汰,而 SPIN 是 RIF 的补充

    RIF 是一项正在进行的 W3C 工作,一旦标准化就会弃用 SWRL。 SPIN is a W3C Team Submission,存在一个名为 TopSpin 的推理引擎 within Top Braid Composer。

    answers.semanticweb.com 社区可能会提供更多帮助。

    【讨论】:

      【解决方案2】:

      SWRL 可以看作是 OWL 的扩展。从语义上讲,它很好地位于 OWL 之上,通常用于 OWL 无法表达的语句。从语法上讲,它并没有很好地在 OWL 之上分层,因为它引入了一种全新的语法(注意例如显式变量)。但是,有些人更喜欢 SWRL 的语法而不是 OWL 的语法,甚至对可以在 OWL 中成功表达的语句也使用 SWRL(例如,您的示例公理也可以在 OWL 中表达)。

      要了解 OWL 和 SWRL 之间的区别,请阅读例如

      我肯定会鼓励您使用 SWRL。 ;)

      (在引用它之前是否必须显式“创建”或“声明”一个类可能取决于您的本体编辑器或推理工具。)

      【讨论】:

        猜你喜欢
        • 2015-05-24
        • 2021-11-12
        • 1970-01-01
        • 1970-01-01
        • 2019-01-28
        • 2015-11-23
        • 1970-01-01
        • 1970-01-01
        • 2013-02-21
        相关资源
        最近更新 更多