Problème de joker * et selection for-each - XML/XSL - Programmation
Marsh Posté le 02-04-2004 à 12:24:52
Affaire resolue grace a un colegue !! je vous mets la reponse :
<xsl:for-each select="url[(domaine=$Vdomaine or contains($Vdomaine,'*')) and (country=$Vcountry or contains($Vcountry,'*')) and (envt=$Venvt or contains($Venvt,'*'))]">
Marsh Posté le 02-04-2004 à 09:53:32
Je programme depuis peu en xml/xsl pour réaliser un parsing.
La structure de mon fichier xml est la suivante :
<!ELEMENT liste (url+)>
<!ELEMENT url (domaine, country, module, envt, link?)>
<!ELEMENT domaine (#PCDATA)>
<!ELEMENT country (#PCDATA)>
<!ELEMENT module (#PCDATA)>
<!ELEMENT envt (#PCDATA)>
<!ELEMENT link (#PCDATA)>
Je passe trois paramètres à mon script xsl : un domaine(Vdomaine), un pays(Vcountry), et un evenement(Vevent)
Ces trois paramètres sont selectionnés dans trois listes différentes qui contiennent chacune l'element * : joker de mes requetes.
Or le problème est le suivant :
Le joker * est considéré comme une chaine de caractères dans l'expression :
<xsl:for-each select="url[domaine=$Vdomaine and envt=$Venvt and country=$Vcountry]">
Le script cherche alors l'element * dans mon fichier xml.
Je souhaiterais chercher tous les elements lorsque je selectionne * dans ma liste.
J'ai cherchés des fonctions de conversion mais sans succès.
Si vous avez quelconques idées n'hesitez pas ca fais plus de 8 heures que je passe dessus sans résultats positifs !!
Bon bah j'attend vos solutions merci
---------------
@+, et permettez moi de faire vivre mon site avec une petite visite sur celui ci : http://www.oldware.net