|
top
|
Subject: Convert all Upper case string value to First letter uppercasee and the rest lower case Author: Ivan Pedruzzi Date: 05 Sep 2005 04:01 PM
|
Assuming you need to convert the XML element names only, the following transformation should help
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:variable name="lowercase" select="'abcdefghijklmnopqrstuvwxyz'"/>
<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"/>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="@*">
<xsl:copy-of select="."/>
</xsl:template>
<xsl:template match="*">
<xsl:variable name="name" select="
concat(substring(local-name(),1,1) ,
translate( substring(local-name(), 2, string-length(local-name()) - 2), $uppercase , $lowercase),
substring(local-name(), string-length(local-name()), 1)) "/>
<xsl:element name="{$name}" namespace="namespace-uri()">
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Hope this helps
Ivan Pedruzzi
Stylus Studio Team
|
|
|