耶拿SPARQL查询,结果中无空白节点

时间:2018-07-24 18:14:09

标签: sparql jena blank-nodes

如何创建一个查询,该查询仅返回断言的个体,而不返回空白节点(匿名个体)(如果存在)?

这是我的SPARQL查询:

PREFIX ont: <http://ontologies/aa-CurrentOntology#>
PREFIX rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT DISTINCT ?ind
WHERE {
    ?ind rdf:type ont:Size .
}
ORDER by ?ind

以下是一些结果(解决方案):

sol: ( ?ind = <http://ontologies/aa-CurrentOntology#Big> )
sol: ( ?ind = <http://ontologies/aa-CurrentOntology#Small> )
sol: ( ?ind = _:b0 )
sol: ( ?ind = _:b1 )
sol: ( ?ind = _:b2 )
sol: ( ?ind = _:b3 )… thousands more after this

我希望查询仅返回前两个结果,而不返回后四个(_:b0,_:b1等)。这些在我的输入OWL文件中不存在。我意识到空白节点可能是因为定义了本体的方式,但是有没有办法从查询结果集中消除它们?

我尝试添加:

FILTER isURI (?ind)

...但是这仍然需要在过滤掉所有空白节点之前进行计算。不幸的是,似乎有成千上万个空白节点,查询从未完成。

有没有一种说明方式

  

不必费心计算空白节点

0 个答案:

没有答案