有人可以解释一下这些Sparql之间的区别

时间:2013-02-22 11:02:51

标签: sparql

我有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 in {}。

1 个答案:

答案 0 :(得分:2)

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