SPARQL:如何使用仅存在一个方向的谓词获取所有三元组

时间:2019-04-16 10:26:36

标签: sparql

我想用某个谓词p查询所有三元组。该查询应仅返回不存在其他方向(o,p,s)的三元组(s,p,o)。 我该如何查询?

1 个答案:

答案 0 :(得分:0)

那很简单:

SELECT ?s ?p ?o {
    ?s ?p ?o
    MINUS { ?o ?p ?s }
}

FILTER NOT EXISTS而不是MINUS也可以。将查询中的?p替换为所需的谓词,或者如果要在结果中使用FILTER (?p=ex:myPredicate),则使用?p之类的内容。