查询dbpediasparql以获取更多结果

查询dbpediasparql以获取更多结果,sparql,dbpedia,Sparql,Dbpedia,我想从dbpedia获取一些数据。 我有实体URL,想获得一些关于本地化的信息。 现在我这样调用查询: PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> PREFIX dbo: <http://dbpedia.org/ontology/> SELECT DISTINCT * WHERE { <{0}> rdfs:label ?label . OPTIONAL { <{

我想从dbpedia获取一些数据。 我有实体URL,想获得一些关于本地化的信息。 现在我这样调用查询:

PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>
PREFIX dbo: <http://dbpedia.org/ontology/>

SELECT DISTINCT * WHERE 
{
  <{0}> rdfs:label ?label . 
    OPTIONAL {
     <{0}> geo:lat ?lat ;
     geo:long ?long .
    } .
    OPTIONAL {
     <{0}> dbo:Country ?dboCountry 
    } . 
    OPTIONAL {
     <{0}> dbpedia-owl:country ?dbpediaContry .
     ?dbpediaContry dbpprop:cctld ?ccTLD
    }. 
    OPTIONAL {
     <{0}> dbpprop:country  ?dbpropContry
    }
    FILTER ( lang(?label) = "en" )
}
前缀geo:
前缀dbo:
选择DISTINCT*WHERE
{
标签?标签。
可选的{
地理:拉特?拉特;
吉奥:长?长。
} .
可选的{
dbo:国家?dbo国家
} . 
可选的{
dbpedia猫头鹰:国家?DBPEDICONTRY。
?数据库控制dbpprop:cctld?cctld
}. 
可选的{
dbpprop:国家?DBPROPCTRY
}
过滤器(lang(?label)=“en”)
}
对于每个url(用url替换{0})。 但我想优化它,并在一个查询中获得更多实体的结果。 也可以不在每行中设置url吗

问候
Piotr

嗯,看来我已经找到了这两个问题的答案。 你知道这个吗 解决办法是:

 SELECT DISTINCT *

        WHERE {
            ?uri rdfs:label ?label .
            OPTIONAL { ?uri geo:lat ?lat .
                       ?uri geo:long ?long} .
  
        FILTER (?uri IN ({0}, {1}, ...)  )
        }
也许这对其他人会有帮助? 或者也许有人知道更好的解决办法