Ettore, Lucas, thanks a lof for your answers, that's what I was looking for.
Searching for an entity based on a label + language (and optionally
additionnal criteria like instance of) looks like a reasonable use-case,
this could be "packaged" inside magic triples to make this feature directly
available in SPARQL (as other triplestores with full-text/index-based
search are doing).
Cheers
Thomas
Le ven. 4 oct. 2019 à 14:55, Lucas Werkmeister <mail(a)lucaswerkmeister.de> a
écrit :
If you use regular search rather than entity search,
you can use
WikibaseCirrusSearch
<https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:WikibaseCirrusSearch>
search keywords like "haswbstatement:P31=Q5". Note that this uses a
different kind of search, though – I think it only matches full words
(after stemming and other transformations?), not prefixes. Query Link
<https://query.wikidata.org/#SELECT%20%3Fperson%20%3FpersonLabel%20WHERE%20%7B%0A%20%20SERVICE%20wikibase%3Amwapi%20%7B%0A%20%20%20%20bd%3AserviceParam%20wikibase%3Aapi%20%22Search%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20wikibase%3Aendpoint%20%22www.wikidata.org%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mwapi%3Asrsearch%20%22einst%20haswbstatement%3AP31%3DQ5%22.%0A%20%20%20%20%3Fperson%20wikibase%3AapiOutputItem%20mwapi%3Atitle.%0A%20%20%7D%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%7D>
Cheers,
Lucas
On 04.10.19 10:22, Ettore RIZZA wrote:
Forgot to mention: you can do the same search using the API only:
https://www.wikidata.org/w/api.php?action=wbsearchentities&search=einst…
But not sure you can easily filter the results by "instance of".
Ettore Rizza
On Fri, 4 Oct 2019 at 10:15, Ettore RIZZA <ettorerizza(a)gmail.com> wrote:
Hello Thomas,
You can perform a full text search with the API, but not yet with SPARQL
AFAIK. However, it is possible to call the API in a SPARQL query. For
example, here is a query
<https://query.wikidata.org/#SELECT%20DISTINCT%20%3Fperson%20%3FpersonLabel%20WHERE%20%7B%0A%20%20SERVICE%20wikibase%3Amwapi%20%7B%0A%20%20%20%20%20%20bd%3AserviceParam%20wikibase%3Aapi%20%22EntitySearch%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20wikibase%3Aendpoint%20%22www.wikidata.org%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20mwapi%3Asearch%20%22einst%22%20.%0A%20%20%20%20%20%20bd%3AserviceParam%20mwapi%3Alanguage%20%22en%22%20.%0A%20%20%20%20%20%20%3Fperson%20wikibase%3AapiOutputItem%20mwapi%3Aitem%20.%0A%20%20%7D%0A%20%20%3Fperson%20wdt%3AP31%20wd%3AQ5.%0A%20%20%0A%20%20%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%20%20%0A%20%20%0A%7D%20ORDER%20BY%20DESC(%3Fperson)%20LIMIT%2020>
that looks for "human (Q5)" whose label contains the string
"einst".
Hope this helps,
Ettore Rizza
On Fri, 4 Oct 2019 at 09:58, Thomas Francart <thomas.francart(a)sparna.fr>
wrote:
Hello
I understand the wikidata SPARQL label service only fetches the labels,
but does not allow to search/filter on them; labels are also available in
regulare rdfs:label on which a FILTER can be made.
However I would like to do full-text search over labels, to e.g. feed an
autocomplete search field, actually just like the usual top-right wikidata
search field does. I would also be interested to combine this with a
criteria on "instance of", to search only on instances of a given class.
Can I do that efficiently using the Wikidata SPARQL service ? or is
there a separate API I could use ? (exemple welcome)
Thanks
Thomas
--
*Thomas Francart* -* SPARNA*
Web de *données* | Architecture de l'*information* | Accès aux
*connaissances*
blog : blog.sparna.fr, site : sparna.fr, linkedin :
fr.linkedin.com/in/thomasfrancart
tel : +33 (0)6.71.11.25.97, skype : francartthomas
_______________________________________________
Wikidata mailing list
Wikidata(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata
_______________________________________________
Wikidata mailing
listWikidata@lists.wikimedia.orghttps://lists.wikimedia.org/mailman/listinfo/wikidata
_______________________________________________
Wikidata mailing list
Wikidata(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata
--
*Thomas Francart* -* SPARNA*
Web de *données* | Architecture de l'*information* | Accès aux
*connaissances*
blog : blog.sparna.fr, site : sparna.fr, linkedin :
fr.linkedin.com/in/thomasfrancart
tel : +33 (0)6.71.11.25.97, skype : francartthomas