<xsl:template match="book">
<xsl:element name="{@name}">
<xsl:copy-of select="@*[name()!='name'] />
</xsl:element>
</xsl:template>
it also copies any properties to an <book>unnamed 'name'
<book name="XsltForDummies" id="12" />
will turn into
<XsltForDummies id="12 />
source
share