У меня есть следующий запрос SPARQL, чтобы получить список стран с наименьшей плотностью населения на км и их президентов (лидеров):
PREFIX type: <http://dbpedia.org/class/yago/>
PREFIX prop: <http://dbpedia.org/property/>
SELECT ?country_name ?populationdensity ?leader
WHERE {
?country a dbpedia-owl:Country ;
rdfs:label ?country_name ;
prop:populationDensityKm ?populationdensity ;
dbpedia-owl:leader ?leader .
FILTER (?populationdensity < 10 && langMatches(lang(?country_name), "en")) .
}
GROUP BY ?populationdensity
ORDER BY ASC(?populationdensity)
limit 10
Как видите, я группирую результаты по плотности населения, но получаю результаты, которые включают многочисленные дубликаты плотности населения: Запрос SPARQL
Может кто-нибудь сказать мне, что я делаю неправильно? Я предполагаю, что это как-то связано со списком лидеров, где для каждой страны возвращается более одного. Есть ли способ как-то ограничить это до 1 лидера на страну?