Given:
<aliases> <para-alias>name</para-alias> <para-alias>person-name</para-alias> <para-alias>para</para-alias> </aliases>
the following generates a specific stylesheet with a template for each alias:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:axsl="http://www.w3.org/1999/XSL/TransformAlias"> <xsl:namespace-alias stylesheet-prefix="axsl" result-prefix="xsl"/> <xsl:template match="/"> <axsl:stylesheet> <xsl:apply-templates/> </axsl:stylesheet> </xsl:template> <xsl:template match="para-alias"> <axsl:template match="{.}"> <p><axsl:apply-templates/></p> </axsl:template> </xsl:template> </xsl:stylesheet>