Elements can be created with xsl:element instructions. If names of elements are known at the beginning of the transformation it is more convenient to use literal result elements. If names of the elements must be calculated the xsl:element comes handy as inside its name attribute curly brackets can be used in the same way as in the previous examples.
|
XSLT
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:template match="/*"> <xsl:element name="xxx"> <xsl:apply-templates select="bbb"/> </xsl:element> </xsl:template> <xsl:template match="bbb"> <xsl:element name="{.}-{position()}"/> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa> <bbb>x</bbb> <bbb>y</bbb> <bbb>z</bbb> </aaa> |
Output
<xxx> <x-1/> <y-2/> <z-3/> </xxx> |
| Previous chapter: | Conditional Expressions |
| Next chapter: | Groups |
| Previous page: | Escaping curly brackets |
| Next page: | Creating attributes with xsl:attribute |