Hello les choupinettes et choupinous,
J’ai une question qui m’interroge sur le XPath. Voilà par exemple une expression super de base en XPath:
//param[@name=‘date’]
Cette expression, une fois exécutée, va me retourner tous les noeuds (quelque soit leur emplacement dans l’arbre XML) dont l’attribut de nom name aura la valeur date.
Moi, ce que je voudrais, c’est avoir la même expression sans distinction de casse, c’est-à-dire d’avoir tous les noeuds dont l’attribut name possède une valeur date, Date, DATE, etc…
En farfouillant sur le net, j’ai trouvé une sorte de substitut en utilisant la fonction translate() de XPath, mais comme ils disent sur le site du w3.org:
"The translate function is not a sufficient solution for case conversion in all languages. A future version of XPath may provide additional functions for case conversion."
N’y-a-t’il donc pas une solution simple pour arriver à ce que je veux, du genre:
//param[@name=lowercase(‘date’)] ?
Edit: Pour ceux que ça intéresse, voilà ce que l’expression donne avec la méthode translate:
//param[translate(@name, ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’, ‘abcdefghijklmnopqrstuvwxyz’)=‘date’]
Ce message a été édité par rorotaz le 30/04/2004