Uzanto-Diskuto:Marek Mazurkiewicz/query.wikidata

Paĝenhavo ne ekzistas en aliaj lingvoj.
El Vikipedio, la libera enciklopedio

Rozmawiałem na temat tego zapytania ze znajomym ekspertem SPARQL, i nie ma oczywistego rozwiązania. To znaczy, zapytanie można napisać, ale jako że większość elementu ma angielską etykietę, wyszukiwanie elementów bez polskie, angielskiej i esperanckiej etykiety oznacza w praktyce przejrzenie wszystkich elementów spełniających pozostałe kryteria. Innymi słowy, query service musi w takim przypadku praktycznie przejrzeć całe Wikidane, a to się musi skończyć timeoutem, maszyneria nie jest taka wyścigowa.

Jako że wydaje się, że większość z rozważanych elementów ma angielską etykietę, pewnym rozwiązaniem byłoby wyszukiwanie takich, które nie mają polskiej bądź esperanckiej etykiety. Przykładowe zapytanie:

https://query.wikidata.org/#%23%20P105%20Q7432%20no%20label%20in%20pl%2C%20eo%0ASELECT%20%3Fitem%0AWHERE%0A%7B%0A%20%20%3Fitem%20wdt%3AP105%20wd%3AQ7432.%0A%20%20FILTER%28NOT%20EXISTS%20%7B%0A%20%20%20%20%3Fitem%20rdfs%3Alabel%20%3Flang_label.%0A%20%20%20%20FILTER%28LANG%28%3Flang_label%29%20IN%20%28%22pl%22%2C%20%22eo%22%29%29%0A%20%20%7D%29%0A%7D%0ALIMIT%201000


Inną opcją mogłoby być nieograniczanie się do dwóch języków, za to zawężenie kryteriów w innym miejscu. Np, może zamiast wyszukiwać elementy, które P105 Q7432, może można by grupę zawęzić jeszcze dalej,

Ostatnia sprawa: Przypomniano mi, że istnieje strona d:Wikidata:Request_a_query, mgdzie można zgłaszać zapotrzebowanie na zapytania SPARQL. Problemem jest jednak dostępność tej strony, wymusza ona niejako komunikację po angielsku,