Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Value-of select=string(name(node()))

File: Data.xml <elements>   <element_A>     textA_1     <command>element_B</command>     textA_2   </element_A>   <element_B>     textB_1     <command>element_C</command>     textB_2   </element_B>   <element_C>textC_1 textC_2</element_C> </elements> File: Transform.xslt <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="1.0">   <xsl:output method="html" indent="yes" />   <xsl:template match="/">     <xsl:variable name="getValue">       <xsl:call-template name="recursion">         <xsl:with-param name="n" select="count(//*)" />       </xsl:call-template>     </xsl:variable>     <xsl:value-of select="$getValue" />   </xsl:template>   <xsl:template name="recursion">     <xsl:param name="n" />     <xsl:if test="number($n) > 0">       <xsl:value-of select="string(name(node()))" />       <xsl:text> </xsl:text>       <xsl:value-of select="$n" />       &#13;       <xsl:call-template name="recursion">         <xsl:with-param name="n" select="number($n) -1" />       </xsl:call-template>     </xsl:if>   </xsl:template> </xsl:stylesheet> Output: elements 6elements 5elements 4elements 3elements 2elements 1