Altova Mailing List Archives
>xsl-list Archive Home
>Recent entries
>Thread Prev -
>Thread Next - Re: [xsl] Newline problems
Re: [xsl] Newline problems
To:
Date: 5/1/2003 3:42:00 PM
Thanks Mike for your help. Since I have no way of knowing which elements in the source xml would have newlines, would it mean that I will need to have the normalize-space function all over my xsl sheet? - Vishwajit. From: Mike Brown <mike@xxxxxxxx> Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] Newline problems Date: Thu, 1 May 2003 16:13:40 -0600 (MDT) Vishwajit Pantvaidya wrote: > I am using xalan for xml to xml transformation. Input xml string > has some DOS carriage return and/or line feeds introduced by the source > application. XML parsers normalize CR+LF to LF, except in attribute values containing a CR written as a numeric character reference like . So in XSLT you get only LFs ( ) 99.999% of the time. > The source xml string that I was trying to transform is like > (exactly as is, including newlines) > > <!DOCTYPE ABC [ > ... > ]><ABC> > ... > <attr> > value</attr> > ... > </ABC> > To better understand what is going on, you should use something that helps you create a more tangible representation of the XPath/XSLT node tree. XPath tree visualization stylesheets you can apply to the above XML: http://skew.org/xml/stylesheets/treeview/ascii/ http://skew.org/xml/stylesheets/treeview/html/ http://www.cranesoftwrights.com/resources/showtree/ Software providing XPath tree visualization: http://www.topxml.com/xpathvisualizer/ http://www.logilab.org/xpathvis/ and various XML editors like XML SPY. In the case of the element named 'attr', its child text node will encapsulate the text (linefeed character) + 'value' no matter what you do, because it is considered signficant in the XPath data model. If you don't wish to use this text verbatim, you may find that applying the XPath function normalize-space() to the node or string will give you the string you wanted. The normalize-space function takes the "string-value" of its argument, strips leading and trailing whitespace, and collapses intermediate runs of whitespace to a single space character, returning an XPath string object. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list _________________________________________________________________ STOP MORE SPAM with the new MSN 8 and get 2 months FREE* http://join.msn.com/?page=features/junkmail XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Disclaimer
These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

