# https://query.wikidata.org/ | |
SELECT DISTINCT ?item (MAX(?numberOfSpeakers) AS ?maxSpeakers) (MAX(?speakersTime) AS ?mostRecentTime) ?iso639_1 ?iso639_3 ?itemLabel ?itemLabel_en | |
WHERE { | |
?item wdt:P220 ?iso639_3. # Language with ISO 639-3 code | |
?item p:P1098 ?numberOfSpeakersStatement. | |
?numberOfSpeakersStatement ps:P1098 ?numberOfSpeakers. | |
OPTIONAL { | |
?numberOfSpeakersStatement pq:P585 ?speakersTime. | |
} | |
OPTIONAL { | |
?item wdt:P218 ?iso639_1. | |
?item rdfs:label ?itemLabel_1 . FILTER(lang(?itemLabel_1) = ?iso639_1) | |
} | |
OPTIONAL { | |
?item rdfs:label ?itemLabel_3 . FILTER(lang(?itemLabel_3) = ?iso639_3) | |
} | |
BIND(COALESCE(?itemLabel_3, ?itemLabel_1) AS ?itemLabel) | |
OPTIONAL { | |
?item rdfs:label ?itemLabel_en . FILTER(lang(?itemLabel_en) = 'en') | |
} | |
} | |
GROUP BY ?item ?iso639_1 ?iso639_3 ?itemLabel ?itemLabel_en | |
ORDER BY DESC(?maxSpeakers) DESC(?mostRecentTime) |