graphdb 推理规则 - 对一个变量的多重约束

graphdb inference rules - multiple constraint on a variable

是否可以有一个inf。对一个变量有多个约束的规则。例如,是否可以扩展以下规则

  a b c [Constraint b != <rdf:type>]
  b <rdfs:domain> d
------------------------------------
  a <rdf:type> d

就这样(试过了但是规则没有激活)

  a b c [Constraint b != <rdf:type>,  b != <rdfs:label>]
  b <rdfs:domain> d
------------------------------------
  a <rdf:type> d

谢谢

根据最新的 GraphDB documentation,这是一个有效的规则语法。两个约束都使用 AND 执行,因此该规则不适用于 rdf:typerdfs:label 值。这是完整的例子:

Prefices
{
    rdf : http://www.w3.org/1999/02/22-rdf-syntax-ns#
    rdfs : http://www.w3.org/2000/01/rdf-schema#
}

Axioms
{
}

Rules
{
    Id: test

    a b c [Constraint b != <rdf:type>,  b != <rdfs:label>]
    b <rdfs:domain> d
    ------------------------------------
    a <rdf:type> d

}

插入示例文件后,您将仅获得 <urn:a1> 的隐式结果:

<urn:a1> <urn:b1> <urn:c1> .
<urn:b1> <http://www.w3.org/2000/01/rdf-schema#domain> <urn:d1> .
<urn:a2> <http://www.w3.org/2000/01/rdf-schema#label> <urn:c2> .
<urn:b2> <http://www.w3.org/2000/01/rdf-schema#domain> <urn:d2> .