That makes a lot of sense! I had tried to change the namespace to "120" in the URL but I was missing the "srwhat=text" (which is required to have the correct response). I will fix this in the reconciliation service first, and then have a closer look at CirrusSearch to see how it works.
Thanks a lot for your help.
Cheers,
Régis

Le ven. 20 sept. 2019 à 00:25, Lucas Werkmeister <mail@lucaswerkmeister.de> a écrit :

The API version was missing srnamespace=120 (only searches main namespace by default, not Item namespace) and srwhat=text (no idea what the default here is tbh). This version works: https://data.biblissima.fr/w/api.php?action=query&list=search&srsearch=Jakob%20von%20Viraggio&srnamespace=120&srwhat=text

Cheers,
Lucas

On 19.09.19 17:44, Régis Robineau wrote:
Got it! Thanks. The developer of Openrefine-Wikibase is telling me that, inexplicably in my own instance, there is a discrepancy between what is returned in the Mediawiki search UI:
https://data.biblissima.fr/w/index.php?search=Jakob+von+Viraggio&title=Sp%C3%A9cial%3ARecherche&profile=default&fulltext=1 (1 result)
and what is returned by the API:
What could be the reason for that? In theory both result sets should match, do they? This problem should not be related to CirrusSearch, but I may be wrong... Any idea?

Cheers,
Régis




Le jeu. 19 sept. 2019 à 12:15, Lucas Werkmeister <mail@lucaswerkmeister.de> a écrit :

Special:Search is the general MediaWiki search, only partially related to Wikibase, that’s why I specified you should test the other one :)

Installing CirrusSearch is probably your best bet, if it’s possible for you, yeah.

Cheers,
Lucas

On 19.09.19 10:52, Régis Robineau wrote:
Thank you for getting me on the right track. You're right, we're not using CirrusSearch for the moment, and the suggestion box (at the top right corner) does not perform cross-languages search in our instance: the autocomplete mechanism is only aware of the current active language. But on the other hand the main Wikibase search (via Special:Search) does seem to search all available languages... 
I will ask the openrefine-wikibase developer if he thinks there is a way to solve this in his application. But anyway I guess the best way to benefit from a proper cross-languages search, both within Wikibase and for the reconciliation service, would be to use CirrusSearch as well. What do you think?

Cheers,
Régis

Le jeu. 19 sept. 2019 à 00:08, Lucas Werkmeister <mail@lucaswerkmeister.de> a écrit :

It looks like the openrefine-wikibase reconciliation service uses the wbsearchentities API to find items. As far as I’m aware, the default SQL-based Wikibase search also searches other languages, but still, I think the most likely reason you’re getting different results is that Wikidata uses WikibaseCirrusSearch, and I assume your wiki doesn’t. If you use entity search on your wiki directly (i. e. not via Special:Search, but in suggestion boxes), does cross-language search work as it should or does it have the same problem?

Cheers,
Lucas

On 18.09.19 22:55, Régis Robineau wrote:
Hi all,

I'd need help on the Wikidata/Wikibase reconciliation service for OpenRefine.

Context: I have my own Wikibase and WDQS instances in production, and I want to set up a reconciliation service on top of it, so that users can perform matchings from their local OpenRefine. I'm using the same tool as Wikidata, i.e. https://github.com/wetneb/openrefine-wikibase. The web service works fine, I can reconcile strings in OpenRefine against the data stored in my Wikibase instance... 

Issue: But there is a noteworthy difference compared to how the Wikidata reconciliation service works: 
- with Wikidata, i.e. by using the web service URL with the "en" language prefix (https://tools.wmflabs.org/openrefine-wikidata/en/api), I am able to find matches among labels in any other language of a Wikidata item. For instance, if I send a request for "Jacopo de Fazio", which is an alias in French and Italian for Q313460, OpenRefine will match Q313460 as expected, even if I'm using the "en" language code in the web service url. 
- Whereas in my own instance, i.e. by using my own "openrefine-wikibase" reconciliation service, it can only perform matching of labels/aliases in the same language: e.g. if I use "https://my-service.org/openrefine-wikidata/en/api", the web service only searches for labels in English in my Wikibase. This means that I am forced to launch the reconciliation process in OpenRefine for every single language, one by one.

I do not know how the Wikidata reconciliation service is able to take into account all the labels/aliases in all the languages of a given Wikidata item. The data is modeled in the same way in Wikidata and in my Wikibase, and I do not see any difference between the two in the way the RDF data is structured into the respective triplestores...

How can I enable the same behaviour as in the Wikidata reconciliation service? (i.e. to look for labels/aliases in every languages in one API call)
This would heavily improve the reconciliation process in OpenRefine for my users.

Thanks a lot for your help!

Régis



_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech
_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech

_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech
_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech

_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech
_______________________________________________
Wikidata-tech mailing list
Wikidata-tech@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-tech