1

我有 rdf 数据:

@prefix  foaf:  <http://xmlns.com/foaf/0.1/> .

_:a    foaf:name   "Alice" .
_:a    foaf:knows  _:b .
_:a    foaf:knows  _:c .

_:b    foaf:name   "Bob" .

_:c    foaf:name   "Clare" .
_:c    foaf:nick   "CT" .


PREFIX foaf:    <http://xmlns.com/foaf/0.1/>
SELECT ?nameX 
WHERE
 { ?x foaf:knows ?y.
 ?x  foaf:name ?nameX .
 }

我得到一个结果 Alice 但是如果我正在运行这个查询

PREFIX foaf:    <http://xmlns.com/foaf/0.1/>
SELECT ?nameX 
WHERE
{ ?x foaf:knows ?y.
{?x  foaf:name ?nameX .}
}

我得到了同样的结果。由于我是 Sparql 的新手,请解释在 {} 内写入 ?x foaf:name ?nameX 有什么好处。

4

1 回答 1

2

没有区别,并且包含通过添加花括号获得的额外块没有任何好处。通常最好选择最简单的方式来表达给定的查询。

于 2013-02-22T11:38:00.940 回答