Indexation et Recherche

De WIKI-BOKEH
Aller à : navigation, rechercher

Indexation[ ]

Des notices[ ]

Le processus d'intégration des notices constitue des champs d'indexation à partir de plusieurs données suivant deux techniques.
Champs d'indexation textuelle après normalisation et constitution de facettes sur les codifications.

L'indexation textuelle transforme chaque terme d'une chaîne de caractère en majuscule puis y ajoute sa variante au pluriel (ou singulier si le terme est pluriel) et enfin y ajoute sa forme phonétique basée sur un algorithme de type soundex adapté au français.


N.B. : Dans le cas de notices ayant les titres en caractères non latins, hormis pour le grec, l'indexation de ces titres est vide, sauf si la notice contient la transcription en caractère latins. Auquel cas, pour les titres, les caractères latins seront utilisés.

Auteurs et Matières[ ]

Au fil des intégrations, cosmogramme constitue des listes de codifications pour les auteurs et les matières à partir des données présentes dans les notices.
Leur libellé est normalisé puis sert de clé interne de dédoublonnage.
L'identifiant local en base de données préfixé par le type de codification est utilisé pour décrire une facette. Si HUGO Victor à l'identifiant interne 3425 sa facette sera "A3425"

Renvois[ ]

Cosmogramme comporte un outil de moissonnage et d'indexation des renvois d'auteurs et de matières sous le menu de chaque codification.
Le moissonnage interroge le serveur de cache centralisé d'AFI qui lui-même se base sur les données de la BNF.
Les renvois d'une autorité ne sont remoissonnés qu'une fois par an (pour les bases qui n'ont pas leur propre fichier d'autorités).

Zones utilisées[ ]

Titres[ ]

La liste des zones indexées se configure dans Cosmogramme via la variable : 5 - zones unimarc et champ > unimarc_zone_titre

Par défaut cette variable prend la valeur suivante: 200$a;200$e;200$d;200$i;327$a;464$a;461$t

Auteurs[ ]

Indexe les zones: zones: 700, 710, 720, 730, 701, 702, 711, 712, 721, 722

Si aucun auteur n'est trouvé dans ces zones, va chercher en 200$f

Matières \ sujets[ ]

La liste des zones indexées se configure dans Cosmogramme via la variable : 5 - zones unimarc et champ > unimarc_zone_matiere

Par défaut cette variable prend la valeur suivante: 600abcjxyz; 601abcx; 602ajxyz; 605a; 606ajxyz; 607ajxyz; 608ajxyz; 610aejxyz; 615amnx; 616acfjxy; 620abcdefghi

Autres zones[ ]

Bokeh peut indexer le contenu de n'importe quelle zone via la variable : 5 - zones unimarc et champ > other_index_fields

Par défaut cette variable est vide, si vous ajoutez des zones dans cette variable vous devrez procéder à un import total de vos notices afin que la réindexation ait lieu.

Pseudo-notices[ ]

Bokeh peut indexer d'autres contenus en plus des notices SIGB afin qu'ils soient trouvables dans la recherche simple.
Ces contenus sont :

  • Articles du CMS
  • Sitothèques
  • Flux RSS
  • Albums de la bibliothèque numérique

Leurs données sont transformées au format unimarc et un type de document spécifique leur est attribué.
Suite à la transformation unimarc, leur indexation peut s'effectuer comme pour une notice SIGB.

Recherche simple[ ]

Déroulement[ ]

Lors de la recherche simple les termes saisis subissent les mêmes transformations et sont recherchés en utilisant la recherche fulltext mysql sur les axes titres, auteurs, éditeurs, collection, matières et dewey.

Une première fois en mode "ET" : les résultats doivent contenir au moins une variante de tous les termes saisis.

Recherche étendue avec des "OU"[ ]

La recherche étendue est activée par défaut dans Bokeh.

Vous pouvez la désactiver dans les variables d'administration : https://mon_bokeh.org/admin/index/adminvar "EXTENDED_SEARCH"

Si aucun résultat n'est retourné dans ce mode, la recherche est relancée en mode "OU" : les résultats doivent contenir au moins une variante d'au moins un des termes saisis.


Recherche d'expression exacte ( Bokeh 8.0.155 )[ ]

Si l'expression saisie est encapsulé entre "", alors la recherche deviendra exacte et sans phonétisation. Si on cherche un ensemble de mot en exacte il faudra donc qu'ils existent tous, dans le même ordre, juxtaposé et avec la même orthographe.

Nous avons donc ici une limite à cette recherche - par exemple ces expressions sont identiques: "canard bleu" "CaNard, bléu!"

Il n'y a pas de recherche étendue lors d'une recherche exacte.


Vidéo[ ]

Dédoublonnage phonétique[ ]

De plus, si parmi les termes certains présentent la même représentation phonétique, celle-ci est ignorée par la recherche.

Par exemple, pour une recherche "jean genet" les termes seraient traduits en:

  • (JEAN JEANS JAN)
  • (GENET GENETS JAN)

Le premier passage en mode "ET" correspondrait donc à demander les notices contenant la variante phonétique JAN (pour jean) ET JAN (pour genet), ce qui revient à demander les notices contenant JAN, ce qui correspond à toutes les notices dont l'auteur ou le titre contient "jean".

En ignorant la forme phonétique en collision, les termes sont traduits en:

  • (JEAN JEANS)
  • (GENET GENETS)

Ce qui amène à une recherche plus précise mais ne bénéficiant pas de la recherche par les orthographes approchantes.

Notez que la désactivation de la variante phonétique ne se fait que pour les termes ayant une collision.

Les termes "théatre jean genet" sont traduits en :

  • (THEATRE THEATRE TEATR)
  • (JEAN JEANS)
  • (GENET GENETS)

Pondération et classement des résultats[ ]

Les résultats sont pondérés sur les axes titres et auteurs.

Bokeh calcule un indice de pertinence fulltext MySQL des termes recherchés sur chacun de ces axes puis classe les résultats avec la formule suivante:

  • (pertinence sur les titres * 1.5) + pertinence sur les auteurs

Si les mots ont plusieurs occurrences dans le titre, celui-ci aura alors plus de poids qu'un titre qui ne contient qu'une fois le mot recherché.

Cette formule est actuellement identique pour tous les portails et non paramétrable par les administrateurs.

A partir de Bokeh 8.0.155, une pondération sur l'expression exacte saisie en recherche influe sur cette pondération. Si l'ensemble des mots consécutifs saisis en recherche se trouvent tel quel dans un champ indexé, alors la notice aura une pertinence bien plus élevée.

Mise à jour des autorités [ ]

Il faudra envisager un export total du SIGB vers Bokeh pour que les autorités soient mises à jour, dans les notices du portail. Les anciennes codifications restent accessibles dans l'administration du portail > Parcourir les codifications. Le Cosmogramme dispose d'une fonction afin de supprimer ces autorités sans notice bibliographique associée.