sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-users] J'y étais presque...


From: Pierrick Brihaye
Subject: Re: [sdx-users] J'y étais presque...
Date: Thu, 23 Oct 2003 19:48:23 +0200

Salut,

Il y a tellement de questions et tellement d'inconnues que ça va être
difficile de répondre en l'état :-)

Premièrement : quelle version de SDX ? Je préviens que j'ai totalement
décroché de la 2.1 (et de la 1 ;-)...

> Prérequis :
> * prenom est un champ indexé de type field
> * w-prenom est un champ indexé de type word

Quel est l'analyseur ? Et d'ailleurs, n'en as-tu qu'un seul ? Je m'amuse
beaucoup en ce moment à vouloir utiliser 3 analyseurs différents :-)

> La requête linéaire (linearquery) lucene suivante
> prenom:a*

Euh... pas très linéaire ça :-) Pour info, je ne fais plus que des
SimpleQuery...

> Apparemment, pour obtenir toutes les variantes accentuées, la solution
> est de faire une requête combinant toutes les valeurs possibles séparées
> avec des opérateurs 'or' :
> (prenom:a) (prenom:â) (prenom:à) (prenom:A) (prenom:À)

Euh... c'est le prix à payer si tu ne veux pas analyser, non ?

Par contre, ce qui suit n'est pas probablement pas normal :

>La requête linéaire lucene suivante
>w-prenom:a*
>me retourne doc1 (prenom=arbre) et doc4 (prenom=Aline)

... car si tu as un comportement par défaut, à savoir un analyseur basé sur
fr (locale, langue, explicite...), l'analyseur français devrait utiliser le
"ISOLatin1AccentFilter" qui est censé appauvrir les diacritiques lors de
l'analyse : les autres documents devraient donc être remontés.

Mais bon... le problème est peut-être ailleurs, peut-être dans LinearQuery
ou Terms. Ou alors... tu cherches avec un analyseur qui n'est pas celui qui
a servi à l'indexation : utiliser éventuellement Luke pour voir ce qu'il y a
dans les index.

> C'est un peu lourd mais c'est faisable.
> (je l'ai fait, en écrivant un fichier XML qui dit pour chaque lettre
> majuscule de l'alphabet français, quelles sont les variantes majuscules
> et minuscules)

Un petit patch sur SDX ne serait-il pas mieux ? :-)

> Maintenant, si je souhaite avoir la liste des termes pour le champ
> "prenom" qui commence par a (et toutes ses variantes) comment puis-je me
> débrouiller. Apparemment, sdx:terms ne prend en compte que la première
> valeur du paramètre "value"  ?

Euh... tu peux fournir les paramètres que tu passes à <sdx:terms> ?

Plus généralement, Lucene a beaucoup évolué ces temps-ci. En mieux, mais pas
autant qu'on aurait pu le souhaiter. Une bonne partie du code de SDX relatif
aux termes et aux requêtes (et qui remonte parfois à SDX 1) aurait peut-être
intérêt à être revue à la lumière des avancées de Lucene.

A+

p.b.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]