2013-08-22 2 views
1

J'ai un fichier XML avec ces valeurs:Comment puis-je récupérer et stocker une valeur dans une variable dans XSLT?

<query> 
    <club>First</club> 
</query> 

Et un fichier XSLT où je veux récupérer la valeur du XML. Comment puis-je récupérer et stocker la valeur du club dans une variable dans XSLT? Je l'ai fait quelque chose de similaire à des variables en stockant XSL comme ceci:

<xsl:variable name="testVar"> 
<xsl:choose> 
    <xsl:when test="$variable = 'hello'"> 
     <xsl:text>msg=hello</xsl:text> 
    </xsl:when> 
    <xsl:otherwise> 
     <xsl:text>msg=bye</xsl:text> 
    </xsl:otherwise> 
</xsl:choose> 

Mais pas XPATH ...

+0

Ce n'est pas clair pour moi ce que vous demandez. Vous avez stocké des valeurs dans une variable en XSL, mais vous voulez savoir comment le faire en XSLT? XSL est le même que XSLT, à l'exception du vocabulaire XSL-FO, qui n'est pas pertinent pour cette discussion. Demandez-vous comment déclarer une variable dans une expression XPath (votre dernière phrase, par opposition au titre et au paragraphe du milieu), afin qu'elle puisse être utilisée ultérieurement dans la même expression XPath? – LarsH

Répondre

3

Pour XPath, il suffit d'utiliser l'attribut select= pour traiter votre article:

<xsl:variable name="givenClub" select="/query/club"/> 

... ou, si votre noeud courant est query, puis:

<xsl:variable name="givenClub" select="club"/> 
+0

Salut le premier fonctionne bien mais comment savez-vous quel nœud vous êtes? –

+1

Par le contexte de l'endroit où vous écrivez l'instruction basée sur le dernier nœud correspondant et les changements de contexte depuis lors. –

Questions connexes