|
From: | Martin Sevigny |
Subject: | Re: [sdx-users] affichage alphabétique d'un e liste de terme sur un champ |
Date: | Fri, 17 Jun 2005 16:30:11 +0200 |
User-agent: | Mozilla Thunderbird 1.0.2 (Windows/20050317) |
Bonjour,
Certains champs de ma base de document comportent beaucoup de termes ( à peu près 10 000) et c'est du coup assez peut intéressant de lancer toute la liste (à raison de 20 termes par pages, ça fait 500 pages, c'est pas super pratique) D'où l'utilisation d'un pré-choix alphabétique de la première lettre comme ça se fait souvent. Mon problème c'est que je veux que ce premier choix soir indépendant de la casse : si je fais termes.xsp?f=Auteur&v=A* j'ai bien tous les termes du champ Auteur commençant par un A majuscule et si je fais termes.xsp?f=Auteur&v=a* j'ai tout ceux commençant pat un a minuscule. mais j'aimerais obtenir l'union de ces deux résultats à partir d'une seule requète.
J'interviens tard, mais à ma connaissance SDX ne permet pas de faire cela directement. On peut le simuler avec un post-traitement, mais on perd la notion de pagination des termes qu'offre SDX.
Une autre solution consiste à préfixer le contenu de ton champ par la première lettre sans différence de casse. Par exemple, si tu as les termes Avion et amirauté, tu peux stocker dans ton champ:
a|amirauté a|AvionEnsuite, tu filtres sur v=a* et tu auras les deux. Evidemment à l'affichage tu proposes <xsl:substring-after(sdx:term/@value, '|')/> mais ça tu y aurais pensé tout seul ;-)
Martin Sévigny
[Prev in Thread] | Current Thread | [Next in Thread] |