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.

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.


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

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.


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

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