[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] relance sur pb. Listquery + pb. sur recherche expand que
From: |
Pierrick Brihaye |
Subject: |
Re: [sdx-users] relance sur pb. Listquery + pb. sur recherche expand query thesaurus |
Date: |
Wed, 21 Jul 2004 16:40:27 +0200 |
User-agent: |
Mozilla/5.0 (Windows; U; Win98; fr-FR; rv:1.6) Gecko/20040113 |
Bonjour,
zaghouane samir a écrit :
recherches_thesaurus.xsp?page=recherches_thesaurus&value=Nom_du_terme&th=nom_du_thesaurus&base=sdxworld
cette recherche me ramene uniquement les documents
comportant le terme_recherché ds le type du champ
Mmmh... votre explication n'est pas très claire. Enfin, je crois avoir
compris une partie de ce qui vous arrive...
>(la recherche est lancée ss le lien sur le BT ):
Que voulez vous dire ? Moi, ce que je comprends, c'est que vous
n'activez pas les relations dans le thésaurus donc... il est normal
qu'il n'y ait pas d'expansion, non ?
Si vous pouviez être plus précis, on pourrait avancer...
<sdx:query type="field" engine="lucene"
luceneQuery="champ_indexé:Terme" ...>
Cette LuceneQuery est typique d'une requête qui n'a *pas* été étendue et
vous ramènera effectivement ce que vous avez demandé à savoir
"uniquement les documents comportant le terme_recherché".
C'est donc normal... en attendant d'en savoir plus sur l'activation des
relations.
Le deuxième cas, lui est *très* clair (et tout à fait normal) :
recherches_thesaurus.xsp?page=recherches_thesaurus&value=nom_du_terme&th=nom_du_thesaurus&base=sdxworld
cette recherche me ramene uniquement les documents
comportant le terme_générique correspondant au terme
recherché (la recherche est lancée avec le lien sur le
BT)
... ce qui prouve que la requête a bien été étendue ainsi que le prouve
l'attribut LuceneQuery :
<sdx:query type="field" engine="lucene"
luceneQuery="champ_indexé:terme(champ_indexé:Terme_BT)"
Note. Vous n'avez pas oublié une espace ? champ_indexé:terme
(champ_indexé:Terme_BT)
Je pose donc la question ; en quoi le comportement est-il différent de
ce que je vous demande de préciser plus haut ?
Quant au résultat "cette recherche me ramene uniquement les documents
comportant le terme_générique correspondant au terme recherché", c'est
tout à fait normal.
Comme votre champ est de type Field, il n'a pas été analysé (voir la doc
sur les analyseurs) et est donc stocké avec une majuscule dans l'index
(utilisez Luke pour en avoir confirmation). Dans ces conditions, une
recherche avec minuscule (champ_indexé:terme) ne donnera rien. par
contre, l'autre recherche (champ_indexé:Terme_BT) ramène efftivement
quelque chose.
Ceci dit, il faut que je regarde le mécanisme d'expansion : il n'est a
priori pas normal (selon moi) qu'un terme en minuscules puisse être
étendu alors qu'il est en majuscules dans le thésaurus de départ : je
soupçonne un utilisation de SimpleQuerys dans LuceneThesaurus.java...
extrait de code(declaration
param)recherche_thesaurus.xsl :
<xsl:param name="base" />
<xsl:param name="field" />
<xsl:param name="th" />
Cette déclaration de paramètres est a priori inutile car les paramètres
de la request sont transmis aux transformations... Peu importe.
A bientôt,
--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:address@hidden
+33 (0)2 99 29 67 78