我尝试在具有此查询链接SERVICE
的网站上使用 SPARQL 查询中的关键字,
我在这里找到了关于 SERVICE 关键字的信息:此链接。
我的查询是我已经在上面给出的链接来执行:
SELECT *
WHERE {
?x a ?name .
SERVICE ?name
{ ?p a ?q . }
}
但它没有执行我的 SPARQL 查询并给出错误为什么?我尝试更改?p
为,?name
但仍然无法正常工作。
基于评论中问题的不明确扩展......我认为SERVICE
与您的查询无关,我认为您想要更多类似的东西 -
SELECT DISTINCT ?x ?name ?q
WHERE
{
?x a ?name .
?name a ?q .
}
ORDER BY ?x ?name ?q
LIMIT 100
查询的想法是什么?我不明白您想通过查询实现什么。顺便说一句,?s a ?cls
DBpedia 中类型三元组的数量是 100 555 839 ......
我不认为 DBpedia 对每个类都有单独的图表。即使它有,对给定类的查询,例如dbo:Person
SELECT * WHERE {
SERVICE dbo:Person
{ ?p a ?q . }
}
LIMIT 10
导致错误
Virtuoso 42000 Error SQ070:SECURITY: Must have select privileges on view DB.DBA.SPARQL_SINV_2
我猜 DBpedia SPARQL 端点不允许联合查询