Carriage return and line feed

Guys,
I am trying to convert data from:
<segment segment-id="GS" area="transaction-header" position="001"
name="Functional Group Header">
<element reference="GS01" name="Functional Identifier Code">PO
</element>
<element reference="GS04" name="Date">960207</element>
<element reference="GS05" name="Time">085415</element>
<element reference="GS06" name="Group Control Number">11101</element>
<element reference="GS07" name="Responsible Agent Code">
<code name="Accredited Standards Committee X12">X</code>
</element>
</segment>
to a string of character like:
GS*PO*field2*field3*960207*085415*11101*X%
Using an XSL like:
<xsl:template match="segment[attribute('segment-id')]"><xsl:value-of
select="@segment-id"/><xsl:for-each
select="element">*<xsl:apply-templates/></xsl:for-each>%
</xsl:template>
But I always have a ^M (carriage return/line feed)before each "*"
character. Can someone tell me what have I done wrong in my XSL? and
What is the correct one so ^M will not show up in the result data?
Thanks,
Suli
_________________________________________________________
DO YOU YAHOO!?
Get your free @yahoo.com address at http://mail.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list