-1

我尝试在具有此查询链接SERVICE的网站上使用 SPARQL 查询中的关键字, 我在这里找到了关于 SERVICE 关键字的信息:此链接

我的查询是我已经在上面给出的链接来执行:

 SELECT * 
 WHERE { 
   ?x a ?name .  
   SERVICE ?name 
   { ?p a ?q . } 
 }

但它没有执行我的 SPARQL 查询并给出错误为什么?我尝试更改?p为,?name但仍然无法正常工作。

4

2 回答 2

0

基于评论中问题的不明确扩展......我认为SERVICE与您的查询无关,我认为您想要更多类似的东西 -

SELECT DISTINCT ?x ?name ?q
WHERE 
  {
    ?x     a  ?name  .
    ?name  a  ?q     .
  }
ORDER BY ?x ?name ?q
LIMIT 100

在这里查看结果

于 2016-08-10T18:36:11.210 回答
0

查询的想法是什么?我不明白您想通过查询实现什么。顺便说一句,?s a ?clsDBpedia 中类型三元组的数量是 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 端点不允许联合查询

于 2016-08-10T13:57:26.147 回答