bonjour,

j'ai un fichier xml style :


<lead>
  <tt>bla bla</tt>
  <dd>uu</dd>
</lead>


dans mon fichier xsl:


<xsl:param name="tt">Date d'enregistrement de la demande</xsl:param>
<xsl:param name="dd">Date d'enregistrement de la demande</xsl:param>
<xsl:template match="lead">
   <xsl:for-each select="*">
       <xsl:if test="string-length(.) > 0">
          <tr>
               <td><xsl:value-of select="name()" /> </td>
               <td><xsl:value-of select="." /></td>
          </tr>
       </xsl:if>
   </xsl:for-each>
</xsl:template>

La ça marche mais avec name() j'obtiens tt ou dd. Je voudrais que cela soit remplacé par la valeur de la variable du meme nom.

Merci.. J'espère que c'est clair
Modifié par babwar (25 Sep 2008 - 17:49)
Bonjour!

De mémoire, je pense que la fonction exslt evaluate devrait résoudre ton problème. Je ne sais plus si elle a été incorporée à XSLT2.0, et n'ai pas le temps de le chercher avant cet après-midi, désolé de ne pas être plus disert Smiley confused
Modifié par Gilles (26 Sep 2008 - 09:06)
un peu tardivement... merci pour ta réponse... (j'avais pas eut le temps de revenir ;o)

J'ai regardé mais ai trouvé une autre solution.
Comme je travail avec php5 et utilise XSLTProcessor pour faire ma transformation, j'ai juste eut besoin d'ajouter : registerPhpFunctions().

Du coup j'utilise une fonction pour changer le nom du noeud en un texte que je choisi :

<xsl:value-of select="php:functionString('strReplace', name())" />

Merci encore pour ta réponse
Modifié par babwar (30 Sep 2008 - 09:49)