[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] Problème de classement pa r pertinence
From: |
Martin Sevigny |
Subject: |
Re: [sdx-users] Problème de classement pa r pertinence |
Date: |
Thu, 02 Dec 2004 08:00:22 +0100 |
User-agent: |
Mozilla Thunderbird 0.8 (Windows/20040913) |
Bonjour,
J'ai un problème avec une application SDX multibase. Parmi ces bases, il y a
un annuaire de sites avec des titres et des contenus très courts. Du coup,
ils sont systématiquement placés au début de la liste de résultats, à cause
du tri par pertinence basé sur la longueur du texte. Comment éviter ça et
mettre plus en valeur les résultats des autres bases ?
Lucene supporte le concept de "boost". Essentiellement, on peut
"booster" trois choses:
- un champ dans un document
- un document
- un critère de requête
Ces "boost" ont une influence sur le tri de pertinence.
Mais bon, SDX ajoute une couche à Lucene, et en SDX 2.2.1 tout ceci
n'est pas complètement accessible. En fait, les deux premiers aspects
sont accessibles mais non documentés, car pas réellement testés, mais
vous pouvez essayer! Voir ci-dessous.
Toutefois, dans le CVS actuel (future 2.3), ça l'est. En gros, il faut
ajouter des attributs là où on a du XML pour représenter ces concepts.
Pour les deux premiers, c'est dans la sortie de l'indexation:
<sdx:document id="" boost="2.0">
<sdx:field name="title" boost="10.0">
Pour le troisième, c'est dans l'API XSP:
<sdx:executeComplexQuery>
<sdx:simpleQuery boost="2.0"
Le boost par défaut est 1.0. On peut mettre moins ou plus. Toujours des
nombres réels, le "." étant le séparateur des décimales.
J'ai écrit cela de mémoire, pas le temps de tester ou écrire plus.
En passant, on a ajouté cela à SDX exactement pour (tenter de) régler le
problème que vous soulevez. L'application sur laquelle on pourra tester
cela sera construite en début d'année prochaine (Aquitaine Patrimoines).
A bientôt,
Martin Sévigny