JDONREFv3ES Analyzer

De JDONREF Wiki

L'analyzer fourni avec le plugin de JDONREF permet simplement de calculer certains champs qui n'auraient pas été fournis durant l'indexation. Ce calcul est à la base du fonctionnement de la recherche d'adresse.

Principe

ElasticSearch est un moteur de recherche par indexation inversée. La logique de ces outils permet une grande performance dans les recherches à partir du moment où les données sont correctement organisées. Le principe de l'analyzer jdonrefv3es est d'assister à l'indexation des adresses. Plus concrètement, jdonrefv3es permet d'indexer les éléments de l'adresse différemment suivant leur nature, et de créer des champs complémentaires.

Indexation

Les fichiers de mapping définissent l'indexation d'un ensemble de champs de l'adresse. Le champ sur lequel s'appuie l'indexation proposée par l'analyzer jdonrefv3es est "fullName".

Il est la concaténation d'autres champs du document adresse, en appliquant les règles suivantes concernant l'indexation : 1. l'indexation du numéro n'utilise pas le token filter ngram ; 2. l'indexation du code postal et du code département est réalisée ; 3. l'indexation des autres champs s'appuyent sur le token filter ngram et les synonymes ;

De cette manière, tous les champs pourront être utilisés avec auto-complétion, sauf le champ numéro. En effet, l'expérience utilisateur de l'auto-complétion sur le numéro d'adresse donne des résultats tel que :

 saisie de 2 HOPITAL
 résultat 2 BOULEVARD DE L HOPITAL 75005 PARIS
 résultat 20 BOULEVARD DE L HOPITAL 75005 PARIS
 résultat 21 BOULEVARD DE L HOPITAL 75005 PARIS

qui ne sont pas nécessairement ceux auxquels s'attendent les utilisateurs qui ont saisi un numéro d'adresse.

Champs générés

En version 0.2, seul le champ fullName est généré. La génération de fullName_without_numbers et numéro est nécessaire pour l'utilisation de la query fournie en version 0.1, mais n'est pas assurée par l'analyzer de la version 0.2. Il vous faut donc calculer vous même ces données si vous souhaitez utiliser la query.

Il s'agit des champs :

  • numero
  • ligne4
  • ligne6
  • fullName
  • fullName_without_numbers
  • departement

Le champ ligne4 est calculé à partir des champs suivants :

  • numero
  • repetition
  • type de voie
  • article
  • voie

Le champ ligne6 est calculé à partir des champs :

  • codepostal
  • commune

Le champ fullName est calculé à partir des champs :

  • ligne4
  • ligne6

Le champ fullName_without_numbers est calculé à partir des champs :

  • repetition
  • type de voie
  • article
  • voie
  • commune

Le champ departement est calculé à partir de :

  • code postal

Le champ numero est défini à zéro lorsque le type utilisé n'est pas adresse.

Configuration

<<A rédiger>>