<xsl:element>

The <xsl:element> allows you to dynamically calculate an element name.

<xsl:element 
  name = { qname }
  namespace = { uri-reference }
  use-attribute-sets = qnames>
  <!-- Content: template -->
</xsl:element> 
name

The element name

namespace

The namespace URI reference for the element

use-attribute-sets

Lists the names of attribute sets (<xsl:attribute-set>) to be copied into the result tree

An example of <xsl:element> in use:

<xsl:template name="process.table.cell">
  <xsl:param name="cellgi">td</xsl:param>
  <xsl:element name="{$cellgi}">
    <!-- whatever processing is desired -->
  </xsl:element>
</xsl:template>