我在想这些这两个查询是否产生相同的输出。 让我们想象一下,我有我收集数据的两个RDF命名图,并且前缀是店铺: 我想写一个SPARQL查询,其中找出哪些客户更喜欢哪一顿,输出应该是人类可读的SPARQL语法差异
一)
PREFIX shop: <"http://example.org/shop">
SELECT ?customerName ?mealName
FROM <Customers.rdf>
FROM <Meals.rdf>
WHERE
{
?customer shop:prefersMeal ?meal .
?meal shop:mealName ?mealName .
?customer shop:customerName ?customerName
}
b)
PREFIX shop: <"http://example.org/shop">
SELECT ?customerName ?mealName
FROM <Customers.rdf>
FROM <Meals.rdf>
WHERE
{
?x shop:prefersMeal ?meal .
?y shop:mealName ?mealName .
?z shop:customerName ?customerName
}
我试图找出差异,但是当你没有任何地方练习看起来比较复杂。
你是什么意思,你没有任何地方练习?下载并安装简单的三重存储并尝试一些SPARQL查询非常简单。例如,请参阅[RDF4J服务器的安装说明](http://rdf4j.org/doc/rdf4j-server-workbench-and-console/installing-rdf4j-server-and-rdf4j-workbench/)。 –
当您将两个查询都视为图时,差异就变得非常明显,即为每个三元模式绘制一个边,其中节点是主题和对象,边标签是谓词。 – AKSW