Я пытаюсь загрузить все суверенные государства вместе с некоторыми государствами с частично признанным суверенитетом (Тайвань, Косово) в конечной точке SPARQL Wikidata query.wikidata.org. Это мой SPARQL:
SELECT ?item ?iso2
WHERE {
{
?item wdt:P31 wd:Q3624078.
?item p:P31 ?statement.
?statement ps:P31 wd:Q3624078.
FILTER NOT EXISTS { ?statement pq:P582 ?end. }
}
UNION {
FILTER(?item IN (wd:Q865, wd:Q1246))
}
OPTIONAL { ?item wdt:P297 ?iso2. }
}
Как вы можете видеть, суверенные государства загружаются операторами SPARQL, но Тайвань и Косово добавляются явно, с использованием предложения FILTER
.
Предложение фильтра само по себе работает нормально:
SELECT ?item ?iso2
WHERE {
FILTER(?item IN (wd:Q865, wd:Q1246))
OPTIONAL { ?item wdt:P297 ?iso2. }
}
Однако комбинированный оператор не дает двух явных результатов wd:865
, wd:1246
.
Что я делаю не так?