2016-10-16 2 views
1

Что я хочу от моего запроса sparql - это не только получить список всех европейских стран, но я хочу всю информацию, которую они имеют. Например, их капитал, валюта, областьKM и так далее. Конечной целью является использование наборов данных, которые я приобрел в протеже. Запрос я попытался выглядел так:Получить информацию обо всех европейских странах

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

SELECT DISTINCT ?country ?capital ?area ?currency ?wealth 

WHERE { 

?country rdf:type yago:EuropeanCountries; 
    dbo:capital ?capital; 
    dbp:areaKm ?area; 
    dbp:currencyCode ?currency; 
    dbp:gdpPppPerCapita ?wealth . 
} 

Это, казалось, работали на первый, но как вчера он не будет больше. Поэтому мой вопрос: как я могу получить все европейские страны и их свойства, данные dbpedia, используя sparql.

Заранее благодарен!

ответ

1

Со вчерашнего DBpedia 2016-04 загружается в http://dbpedia.org/sparql, и, насколько я могу видеть, данные YAGO не загружен (пока?)

По крайней мере, это упрощенный запрос уже не возвращать результат:

PREFIX yago: <http://dbpedia.org/class/yago/> 
SELECT DISTINCT * WHERE { 
    ?country a yago:EuropeanCountries  
} 

Альтернативный запрос с использованием категорий DBpedia (и ваш тип YAGO более или менее то же самое):

PREFIX dbo: <http://dbpedia.org/ontology/> 
PREFIX yago: <http://dbpedia.org/class/yago/> 
PREFIX dbp: <http://dbpedia.org/property/> 
PREFIX dct: <http://purl.org/dc/terms/> 

SELECT DISTINCT * 
WHERE 
    { ?country dct:subject <http://dbpedia.org/resource/Category:Countries_in_Europe> ; 
       dbo:capital ?capital 
    OPTIONAL 
     { ?country dbp:areaKm ?area } 
    OPTIONAL 
     { ?country dbp:currencyCode ?currency } 
    OPTIONAL 
     { ?country dbp:gdpPppPerCapita ?wealth } 
    } 

Обратите внимание, что я ставлю некоторые свойства в ДОПОЛНИТЕЛЬНО как минимум для dbp:currencyCode и dbp:gdpPppPerCapita данных нет (больше?).

Смежные вопросы