Mega Code Archive

 
Categories / XML Tutorial / XSLT StyleSheet
 

Normalize the space

File: Data.xml <?xml version="1.0" encoding="utf-8"?> <cars>   <manufacturer name="          Chevrolet ">     <car>Cavalier</car>     <car>Corvette</car>     <car>Impala</car>     <car>Monte Carlo</car>   </manufacturer> </cars> File: Transform.xslt <?xml version="1.0"?> <xsl:stylesheet version="1.0"   xmlns:xsl="http://www.w3.org/1999/XSL/Transform">   <xsl:template match="/">     <xsl:apply-templates />   </xsl:template>   <xsl:template match="*">     <xsl:copy>       <xsl:for-each select="@*">         <xsl:attribute name="{name()}">           <xsl:value-of select="normalize-space()"/>         </xsl:attribute>       </xsl:for-each>       <xsl:apply-templates/>     </xsl:copy>   </xsl:template>   <xsl:template match="text()">     <xsl:value-of select="normalize-space()"/>   </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?><cars><manufacturer name="Chevrolet"><car>Cavalier</car><car>Corvette</car><car>Impala</car><car>Monte Carlo</car></manufacturer></cars>