Interpréter un attribut comme un chemin et non une valeur
Bonjour,
Je débute dans le langage XSL et je veux transformer un code XML en fichier csv.
J'ai un soucis sur un type de données que je n'arrive pas à traiter :
Pour une occurence donnée, la balise tag que je souhaite récupérer ressemble à ça :
Code:
<tag>Concepts communs</tag>
Sauf que parfois elle ressemble à ça :
Code:
<tag reference="../../../interaction/tags/tag"/>
Autrement dit, dans ce cas là je ne veux pas récupérer la valeur mais le chemin en question pour aller chercher la valeur correspondante.
J'ai tenté quelque chose comme ça :
Code:
1 2 3 4 5 6 7 8 9
| <xsl:choose>
<xsl:when test="@reference">
<xsl:variable name="chemin" select="@reference"/>
<xsl:value-of select="$chemin"/><xsl:value-of select="$delim"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="."/><xsl:value-of select="$delim"/>
</xsl:otherwise>
</xsl:choose> |
Mais en réponse j'obtiens :
Concepts communs
../../../interaction/tags/tag
et non :
Concepts communs
Concepts communs
J'espère que je suis clair dans mes explications, n'hésitez pas à me demander des précisions si nécessaire.
Merci d'avance,
Yoann