Mega Code Archive

 
Categories / XML Tutorial / XSLT StyleSheet
 

Prints names of all elements used in the document

File: Data.xml <?xml version="1.0" encoding="utf-8"?> <data>     <contact>       <name>John</name>       <street>Long street </street>       <number>7</number>       <tel>         <home>25252511</home>         <work>88888888</work>       </tel>     </contact>     <contact>       <name>Joe</name>       <street>Short avenue </street>       <number>75</number>       <tel>         <home>21111111</home>         <work>111111111</work>       </tel>     </contact> </data> File: Transform.xslt <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet       version="1.0"       xmlns:xsl="http://www.w3.org/1999/XSL/Transform">     <xsl:template match="/">       <TABLE>         <xsl:for-each select="//*">           <xsl:call-template name="generalTemplate"/>         </xsl:for-each>       </TABLE>     </xsl:template>     <xsl:template name="generalTemplate">       <TR>         <TD>           <xsl:value-of select="name(.)"/>         </TD>       </TR>     </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?><TABLE><TR><TD>data</TD></TR><TR><TD>contact</TD></TR><TR><TD>name</TD></TR><TR><TD>street</TD></TR><TR><TD>number</TD></TR><TR><TD>tel</TD></TR><TR><TD>home</TD></TR><TR><TD>work</TD></TR><TR><TD>contact</TD></TR><TR><TD>name</TD></TR><TR><TD>street</TD></TR><TR><TD>number</TD></TR><TR><TD>tel</TD></TR><TR><TD>home</TD></TR><TR><TD>work</TD></TR></TABLE>