Closed gotnc closed 4 years ago
le champ de recherche en haut à droite de toutes les pages Exemple sur Wikidata : recherche simple de "Jean Jacques Rousseau"
la recherche par mot et la recherche exacte ont chacune un champ dédié dans la page de recherche une fois l'extension AdvancedSearch installée
Exemple sur Wikidata : recherche avec les mots "rita" et "mitsouko"
La recherche par sous-ensemble est possible grâce à l'extension WikibaseCirrusSearch
Exemple sur Wikidata : "Rita Mitsouko haswbstatement:P31=Q215380"
dans les champs portant sur le Nom de l’entité De la même manière, on peut construire une requête sur les textes des déclarations, par exemple sur la propriété "Titre de l'oeuvre" (P18) :
non-implémenté à notre connaissance dans Wikibase ou ses extensions, des pistes d'implémentation seront proposées dans le rapport final
non-implémenté à notre connaissance dans Wikibase ou ses extensions, des pistes d'implémentation seront proposées dans le rapport final
voir commentaire sur #87
à voir si une requête SPARQL, possiblement caché derrière une interface graphique à développer, pourrait faire l'affaire. Exemple :
Pour la recherche simple (sans wikibase cirrrussearch), @maxlath elle s'effectue bien uniquement sur les labels / alias de l'entité uniquement ? Donc pas de recherche plein texte telle que décrite dans le ticket initial, si ?
@gotnc après une bonne plongé dans le code de Wikibase, il semble que le champ de recherche en haut des pages envoie ses requêtes à l'API wbsearchentities
, laquelle fait une requête SQL pour chercher les entités dont les termes (label, description, aliases) dans la langue de l'utilisateur commence par le texte entrée. Pas de recherche plein texte donc.
Ce ticket permet de synthétiser en un seul l’ensemble des tickets qui ont trait à la recherche (et à l’indexation). En amont du rapport final qui devra donner un avis spécifique sur chacune de ces fonctionnalités, l’objet du présent ticket est de fournir des orientations de plus haut niveau sur ce qu’il conviendrait de faire pour répondre aux besoins spécifiques du POC sur cette question.
L’avis portera sur les points suivants
Le ticket est considéré clos lorsque les tickets #215 #214 #216 ont été eux-mêmes clos et que les éléments de réponse ont été amenés en commentaire.
Types d'opérations illustrées par des exemples :
Recherche simple
Exemple : je recherche “Jean-Jacques Rousseau” J’obtiens : la liste de toutes les entités qui contiennent la chaîne exacte “Jean-Jacques Rousseau”, aussi toutes les entités qui contiennent les mots “Jean-Jacques” et “Rousseau” séparément mais pas celles qui contiennent “ean-jacques rouss”
Recherche avancée
Je souhaite effectuer une/des recherche(s) au sein d’un sous-ensemble prédéfini, donc ayant appliqué préalablement un/des filtre(s) à l’ensemble de la base. Exemple : je cherche “Rita Mitsouko” (le groupe musical) dans le sous-ensemble “Collectivités” du FNE, j’active donc préalablement le filtre “Type d’entité” qui s’appuie sur le Référentiel Types d’entités, et je choisis “Collectivités” dans la liste des types proposés. Ensuite je formule ma requête : Le cas échéant, je cherche :
Je souhaite effectuer une première recherche dans l’ensemble de la base (peu importe le type de la requête, simple ou avancée où l’on peut combiner des critères et jouer les opérateurs booléens, etc.). J’affine le résultat de cette requête en appliquant des filtres/facettes. Exemple : je fais une recherche simple “rêveries du promeneur solitaire” (recherche simple type plein texte). A la liste des réponses, j’applique les filtres:
Je souhaite trier (classer) la liste des résultats d’une recherche selon des critères choisis. Exemple : je cherche dans la base toutes les collectivités qui correspondent aux critères :
J’opère une sélection dans une liste de résultats. Exemple : dans le résultat de la recherche décrite dans l’exemple ci-dessus (Sorbonne), j’effectue une sélection, par exemple, en cochant les entités que je souhaite ensuite examiner en détail, les traiter, etc.
Navigation dans un index Exemple : dans le sous-ensemble “Personnes” des entités de la base, j’effectue une recherche par index par la chaîne de caractères "hugo, v" (=> chaîne exacte de caractères "hugo virgule espace v" où "hugo" représente le début du champ Nom (préférentiel ou alternatif). Il est également sous-entendu qu’une troncature à droite s’opère à la lettre terminale de la chaîne "v") La réponse est un positionnement d’une réponse ou d’un ensemble de réponses pertinentes dans la liste totale des Noms de toutes les entités Personnes de la base (sans exclusion), dans un classement alphabétique pur et qui débutent par la chaîne de caractères " hugo virgule espace v". Voir la partie en italiques de la liste des réponses dans l’exemple ci-dessous : … Hugo, Thomas Johannes Hugo, Ulrich Hugo, V. Hugo, Valentine (1887-1968) Hugo, Victor Hugo, Victor (19..-….; chanteur) Hugo, Victor (1802-1885) Hugo, Victor (fils) Hugo, Victor-Marie (1802-1885) Voir : Hugo, Victor (1802-1885) Hugo, Vittor (1802-1885) Voir : Hugo, Victor (1802-1885) Hugo, Vittorio(1802-1885) Voir : Hugo, Victor (1802-1885) Hugo, W. B Hugo, Wayne (1964-….) … Dans cet index je peux naviguer vers le haut, comme vers le bas (signalé dans l’exemple ci-dessus par les points de suspension en haut et en bas de la liste des noms).