Вы должны следовать по пути через свойство, расположенное в административно-территориальном образовании, а затем найти какой-то пункт для остановки, т. Е. Здесь, когда объект является провинцией Канады:
SELECT ?item ?itemLabel ?regionLabel
WHERE { ?item wdt:P17 wd:Q16;
(wdt:P31/(wdt:P279*)) wd:Q515;
wdt:P131* ?region .
?region wdt:P31 wd:Q11828004
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
В более общем случае для штатовстраны, мы должны найти какой-то общий термин, который обозначает его.Этот тройной шаблон может сделать это:
?region (wdt:P31/(wdt:P279*)) wd:Q107390
Однако пути к свойствам ужасны для магазинов тройки и, скорее всего, истечут.
Вот запрос, который по крайней мере возвращает область верхнего уровня длястрана:
select ?region ?regionLabel
{ VALUES ?country {wd:Q30} # get the top level regions of the country
?region wdt:P17 ?country .
?region wdt:P31/wdt:P279* wd:Q10864048 .
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } }