【问题标题】:Virtuoso SPARQL endpoints inference rulesVirtuoso SPARQL 端点推理规则
【发布时间】:2016-04-05 15:25:57
【问题描述】:

当使用托管在 Virtuoso 中的端点时(如 DBpedia endpoint),可以使用一组预定义的规则(可通过 Inference rules 上的链接访问右上)。

如果我需要使用这些规则之一,我可以在端点的查询空间中包含以下内容:

define input:inference 'ldp'

但是,当我尝试包含上一个列表中未预定义的外部推理规则集时,它会触发错误,如下所示:

define input:inference <http://purl.org/goodrelations/v1> 

Virtuoso 37000 Error SP031: SPARQL compiler: 'define input:inference refers to undefined inference rule set "http://purl.org/goodrelations/v1"

问题:

是否可以包含来自其他词汇表的外部规则?如果是,如何?

【问题讨论】:

  • 是否有理由假设purl.org/goodrelations/v1 是一个规则集,而不仅仅是其他一些本体?
  • 我不认为您可以加载外部规则集。他们不应该首先通过一些内部调用加载到 Virtuoso 中,然后可以从例如引用。网页界面?但老实说,我不是 Virtuoso 方面的专家,所以我的回答很有可能是错误的。
  • @JoshuaTaylor 是的。我相信它(确实)是本体,你是对的。但是,如果您检查问题中链接的端点提供的推理规则(推理规则链接),您会发现这有点误导 Virtuoso 的符号。它们实际上是一种词汇包含。至少我是这么认为的。
  • 是的,有一个 DBpedia 端点支持的推理规则集列表,但我不认为这些是在它们可能恰好是的本体中定义而得名。我不认为那些是从这些 URI 中读取的;我认为这些 URI 只是用于识别规则集。不过,我不是 Virtuoso 专家,所以我不能确定。
  • 当在 Virtuoso 特定空间(例如 Virtuoso Users mailing list、公共 OpenLink Support Forums 或机密 OpenLink Support Case)中询问时,Virtuoso 特定问题通常会得到更快、更准确的回答。 Feature-specific docs 也可以帮忙。

标签: sparql rdf dbpedia endpoint virtuoso


【解决方案1】:

DBpedia 实例(以及任何其他 Virtuoso 实例,就此而言)包括一个预加载的推理规则列表。自然,出于各种原因(安全、合理使用等),我们不允许临时包含来自外部来源的推理规则。

注意:Virtuoso 中的推理规则是规则和本体之间的映射(请参阅Using British Royal Family Data Snippets — to demonstrate SPARQL Query Language-based Reasoning & Inference)。它是查询的推理规则杂注中使用的规则名称,然后向 SPARQL 处理器指示以下内容:

  1. 需要调用推理上下文
  2. 要调用的特定规则(同样,映射到定义了关系语义的本体)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多