XML Tutorial/XSLT stylesheet/namespace alias
namespace alias
File: Data.xml
<?xml version="1.0" encoding="UTF-8"?>
<europe>
<scandinavia>
<state>Finland</state>
<state>Sweden</state>
<state>Iceland</state>
<state>Norway</state>
<state>Denmark</state>
</scandinavia>
</europe>
File: Transform.xslt
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="urn:wyeast-net:scandinavia"
xmlns:sc="http://www.wbex.ru/scand">
<xsl:output method="xml" indent="yes" encoding="ISO-8859-1" />
<xsl:namespace-alias stylesheet-prefix="sc"
result-prefix="#default" />
<xsl:template match="europe">
<xsl:apply-templates select="scandinavia" />
</xsl:template>
<xsl:template match="scandinavia">
<sc:scandinavia>
<xsl:apply-templates select="state">
<xsl:sort />
</xsl:apply-templates>
</sc:scandinavia>
</xsl:template>
<xsl:template match="state">
<sc:country>
<xsl:value-of select="." />
</sc:country>
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="ISO-8859-1"?>
<scandinavia xmlns="urn:wyeast-net:scandinavia">
<country>Denmark</country>
<country>Finland</country>
<country>Iceland</country>
<country>Norway</country>
<country>Sweden</country>
</scandinavia>
new namespace-alias
File: Data.xml
<?xml version="1.0" encoding="UTF-8"?>
<europe>
<scandinavia>
<state>Finland</state>
<state>Sweden</state>
<state>Iceland</state>
<state>Norway</state>
<state>Denmark</state>
</scandinavia>
</europe>
File: Transform.xslt
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns="http://www.wbex.ru"
xmlns:sc="http://www.wbex.ru/scand"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" encoding="ISO-8859-1" />
<xsl:namespace-alias stylesheet-prefix="sc"
result-prefix="#default" />
<xsl:template match="europe">
<xsl:apply-templates select="scandinavia" />
</xsl:template>
<xsl:template match="scandinavia">
<sc:scandinavia>
<xsl:apply-templates select="state">
<xsl:sort />
</xsl:apply-templates>
</sc:scandinavia>
</xsl:template>
<xsl:template match="state">
<sc:country>
<xsl:value-of select="." />
</sc:country>
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="ISO-8859-1"?>
<scandinavia xmlns="http://www.wbex.ru">
<country>Denmark</country>
<country>Finland</country>
<country>Iceland</country>
<country>Norway</country>
<country>Sweden</country>
</scandinavia>