Skip to content
Snippets Groups Projects
Commit 84aa753a authored by RUIZ-FABO PABLO's avatar RUIZ-FABO PABLO
Browse files

Merge branch 'ruizfabo-master-patch-80189' into 'master'

ajout détails dans section sur modifications schéma

See merge request !1
parents e1f1692d bf15e9b5
1 merge request!1ajout détails dans section sur modifications schéma
......@@ -13,6 +13,9 @@ Pablo Ruiz - Faculté des langues
1. [Indexation](#indexation)
1. [Validation](#valid)
1. [Configuration du schéma : `managed-schema`](#configSchema)
1. [Champs créés dynamiquement par Solr](#champs-dyn-solr)
1. [Changement des options linguistiques de ces champs pour le français](#champs-fr)
1. [Autres informations sur les champs: recherche exacte vs. inexacte](#champ_vs_champ_str)
1. [Recharger la configuration après modification](#reloadConfig)
1. [Effacer les contenus de l'index et réindexer](#effacerReindexer)
1. [Faire une requête simple](#requeteSimple)
......@@ -187,14 +190,15 @@ Une fois les ajouts validés, on verra le nombre de documents indexés dans la c
L'emplacement du schéma Solr est `server/solr/presse/conf/managed-schema` depuis la racine de l'instance Solr.
#### Champs créés dynamiquement par Solr <a name="champs-dyn-solr"/>
Lors de l'indéxation, Solr a dynamiquement ajouté au schéma des champs selon les champs qui sont trouvés dans les documents d'entrée.
Nous pouvons nous attendre à trouver dans le schéma des champs comme `description`, `pubname`, `enti_person` et autres, cars ils étaient présents dans les documents a indexer. Solr infère le type pour le champ automatiquement.
Or, le schéma de base généré automatiquement par Solr peut être amélioré. Nous allons faire la modification suivante:
- Changer la langue des champs textuels (par défaut en anglais) vers le français
Or, le schéma de base généré automatiquement par Solr peut être amélioré : Nous changerons la langue des champs textuels (par défaut en anglais) vers le français, comme décrit ci-dessous.
Voici les champs ajoutés par Solr au schéma:
Voici les champs ajoutés par Solr au schéma (nous verrons un peu plus bas comment changer la langue pour ces champs):
```xml
<field name="description" type="text_general"/>
......@@ -212,7 +216,7 @@ Voici les champs ajoutés par Solr au schéma:
<field name="url" type="text_general"/>
```
Vers la fin du schema, nous verrons qu'il y a plusieurs champs de type `copyField` qui impliquent les champs ajoutés au schéma par Solr. Les champs source sont les mêmes déja vus ci-dessus, les champs dest (destination) portent le même nom, mais en ajoutant *_str* à celui-ci :
En plus de ces champs, vers la fin du schema nous verrons qu'il y a plusieurs champs de type `copyField` qui impliquent les champs ajoutés au schéma par Solr. Les champs source sont les mêmes déja vus ci-dessus, les champs dest (destination) portent le même nom, mais en ajoutant *_str* à celui-ci :
```xml
<copyField source="pubname" dest="pubname_str" maxChars="256"/>
......@@ -234,6 +238,8 @@ Solr a donc indexé les champs des documents d'origine de deux façons différen
- En appliquant un pré-traitement (tokénisation, stemming), par défaut pour l'anglais (champs de type `text_general`, noms des champs comme dans les documents du corpus)
- Sans appliquer de pré-traitement, laissant le contenu original tel quel (pour recherche exacte, type `strings`, noms des champs ajoutent `_str` au nom dans les documents d'origine)
#### Changement des options linguistiques de ces champs pour le français <a name="champs-fr"/>
Nous allons changer les options linguistiques des champs pertinents, afin que la tokénisation et racinisation (stemming) françaises soient appliquées, en faisant comme ci-dessous.
- Les champs de texte courant (titre, contenu de l'article etc.), ainsi que les champs pour les entités, qui commencent par *enti_* passeront au type `text_fr`
......@@ -255,6 +261,8 @@ Dans le cas des champs pour les entités, il peut y avoir plus d'une valeur par
<field name="enti_time" type="text_fr" multiValued="true"/>
```
#### Autres informations sur les champs: recherche exacte vs. inexacte <a name"champ_vs_champ_str"/>
Nous exploiterons les champs `enti_ ... _str`, en recherche exacte avec le type `strings`, pour afficher les entités dans l'interface, afin qu'elles soient montrés comme des facettes cliquables pour filtrer les résultats. Autrement, on pourrait avoir un mauvais affichage, car l'entité tokénisée et racinisée s'afficherait, au lieu de l'entité exacte, p.ex. *États-Unis* pourrait s'afficher comme *État* et ensuite dans une facette séparée *Uni*.
Au même temps, nous voulons pouvour faire des recherches inexactes dans les entités : Nous pourrions avoir *Emmanuel Macron* comme facette mais nous voulons que le terme soit trouvé quand on cherche *Macron* dans les entités. Les champs `enti_` de type `text_fr` permettront cette utilisation.
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment