C'est normal que ca ne fonctionne pas, la fonction XPath name() dans le prédicat renvoie le nom du noeud courant, le noeud courant étant le noeud qui précéde juste le prédicat soit 'BasicDataType. Il faut que tu descendes d'un niveau sur le noeud enfant que ca fonctionne :
<xsl:when test="PNParamType/TNumber/BasicDataType/*[name()='TUWord']">
Maintenant, pourquoi ne pas désigner explicitement le noeud enfant ?
<xsl:when test="PNParamType/TNumber/BasicDataType/TUWord">
Un exemple plus fourni de ton fichier XML nous permettrait d'être plus précis.
Partager