获取DBpedia中可用的所有人员的SPARQL查询只显示一些人员数据,而不是所有人员数据

获取DBpedia中可用的所有人员的SPARQL查询只显示一些人员数据,而不是所有人员数据,sparql,dbpedia,Sparql,Dbpedia,我正在编写SPARQL查询以获取DBpedia中的所有可用人员。我的问题是-> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX dbo: <http://dbpedia.org/ontology/> PREFIX dbp: <http://dbpedia.org/property/> SELECT ?resource ?name WHERE { ?reso

我正在编写SPARQL查询以获取DBpedia中的所有可用人员。我的问题是->

 PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
 PREFIX  dbo: <http://dbpedia.org/ontology/>
 PREFIX  dbp: <http://dbpedia.org/property/>

SELECT ?resource ?name
WHERE {
    ?resource  rdf:type  dbo:Person;
               dbp:name ?name.  
    FILTER (lang(?name) = 'en')
  }
ORDER BY ASC(?name)
前缀rdf:
前缀dbo:
前缀dbp:
选择?资源?名称
在哪里{
?资源rdf:类型dbo:人员;
名字?名字。
筛选器(lang(?name)=“en”)
}
按ASC订购(?名称)
当我将输出作为HTML/csv/spreadsheet格式时,它给出了大约10000行。 但当我给出查询以获取总计数时

PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX  dbo: <http://dbpedia.org/ontology/>
PREFIX  dbp: <http://dbpedia.org/property/>

SELECT COUNT(*)
WHERE{
    ?resource  rdf:type  dbo:Person;
               dbp:name ?name.  
    FILTER (lang(?name) = 'en')
 }
前缀rdf:
前缀dbo:
前缀dbp:
选择计数(*)
在哪里{
?资源rdf:类型dbo:人员;
名字?名字。
筛选器(lang(?name)=“en”)
}
这是1783404


有人能提出一个解决方案,让所有行的人都可以在DBpedia中使用吗

DBPedia在这方面非常聪明,它不会用大量查询使服务器过载,并将匹配项限制在10000个。由于您正在对结果进行排序,因此可以使用
LIMIT
OFFSET
获得10000个结果集。例如,要获得第二组10000个结果,请使用以下命令:

PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX  dbo: <http://dbpedia.org/ontology/>
PREFIX  dbp: <http://dbpedia.org/property/>

SELECT ?resource ?name
WHERE {
  ?resource  rdf:type  dbo:Person;
             dbp:name ?name.  
  FILTER (lang(?name) = 'en')
}
ORDER BY ASC(?name)
LIMIT 10000 OFFSET 10000
前缀rdf:
前缀dbo:
前缀dbp:
选择?资源?名称
在哪里{
?资源rdf:类型dbo:人员;
名字?名字。
筛选器(lang(?name)=“en”)
}
按ASC订购(?名称)
限制10000偏移10000

事实上,由于DBPedia将结果限制在10000个匹配项,因此
限制实际上并不必要。

@这里所有的活动都是:我不知道这是这里出现问题的原因,但有没有办法让问题变得棘手?也许那时人们会发现这个答案更容易。