大师如何进行 if-then 规则推理?

How virtuoso do if-then rules inference?

我是 Openlink Virtuoso 的新手。我想根据 if-then 语句做一些推理规则,比如

if (B is fatherof C & A is fatherof B) then (A is grandfatherof C).

根据 Virtuoso documentation of Inference Rules & Reasoning,Virtuoso 可以使用 Ontology(图形)来推断 RDF。 Virtuoso 可以使用 if-then 语句推理规则吗?

谢谢!

Virtuoso 8.x 除了先前版本的内置推理规则外,还支持自定义推理和推理规则(使用 SPARQL 作为规则语言)。

作为支持与表示为表或 RDF 图的关系的声明式交互的多模型 RDBMS,始终可以通过 "magic predicates"(使用 Virtuoso 的 SQL 存储过程语言)动态实现关系。

在最新版本的 Virtuoso 中,我们简单地展示了使用 SPARQL 作为规则语言的现有 "magic predicate" 功能,这得益于 SPIN 词汇表中的术语。

实时 SPARQL 查询结果链接展示了自定义推理和推理规则应用于来自 DBpedia 的英国皇室关系类型的片段:

  1. Ancestors & Descendants
  2. Siblings
  3. Aunties
  4. Uncles
  5. Cousins

以下是有关此功能的帖子的链接:

  1. Virtuoso 8.x Custom Inference Rules & Magic Predicates
  2. How To Create Custom Inference Rules using Virtuoso 8.x