[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: disappearing line breaks within an element

Subject: RE: disappearing line breaks within an element
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 23 Jan 2009 12:33:01 -0000
RE:  disappearing line breaks within an element
This is now logged as a bug at

https://sourceforge.net/tracker2/?func=detail&aid=2530978&group_id=29872&ati
d=397617

and a patch to Saxon 9.1 is available.

Michael Kay
http://www.saxonica.com/
 

> -----Original Message-----
> From: cavecatem@xxxxxxxxxxxxx [mailto:cavecatem@xxxxxxxxxxxxx] 
> Sent: 22 January 2009 17:03
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  disappearing line breaks within an element
> 
> Dear List,
> 
> I've been struggeling with an entity problem all day, and the 
> things I tried didn't work out.
> 
> I'm working with Saxxon 8B and XSLT 2.0.
> 
> I have an imput file wich contains XML-output from a sybase database. 
> Long text fields may contain line breaks which appear in the 
> XML as &#xD;
> 
> 
> Example:
> <UserField Type="longtext" Name="some name">I'm a veeery long 
> text.I'm a veeery long text in some text.I'm
>                         a veeery long text in some text.I'm a 
> veeery long text in
>                         some text.&#xD;I'm a veeery long text 
> in .I'm a veeery long text in some text.I'm a veeery long
>                         text in some text.I'm a veeery long 
> text in .&#xD;&#xD;&#xD;I'm a veeery long text in 
>                         .I'm a veeery long text in some 
> text.I'm a veeery long
>                         text in some text.I'm a veeery long 
> text in.</UserField>
>                         
> When I transform the XML to HTML, they just dissappear. 
> I searched in the  mailing list archive and I seem to have 
> understood that when the file is parsed, the  &#xD; becomes a 
> line break. I suppose this is why I fail with the following 
> tokenization?
> 
>  <xsl:for-each select="fn:tokenize(.,'&#xD;' )">
>      <xsl:if test="(fn:string-length(fn:normalize-space (.)) &gt; 0)">
>           <xsl:value-of select="."/>
>             <br/>
>           </xsl:if>
>  </xsl:for-each>
> 
> 
> If so, how do I do this?
> 
> I also tried using a character map, but still it does not work out.
> <xsl:character-map name="break">
>         
>             <xsl:output-character character="&#160;"
>                 string="&amp;nbsp;" />
>             <xsl:output-character character="&#xD;" 
> string="&lt;br/>"/>
>             
>            
>     </xsl:character-map>
>     
>  Someone mentioned that with XSLT 2.0 there was a way to 
> convert the parsed entity back to an entity, but I didn't 
> understand how and where I would have to do that.
>  Could someone explain or point me to a book? I tried with 
> Frank Bongers' but unfortunately, I haven't found anything 
> dealing with line break codes within an element (the 
> ebook-Version my library provides has no bookmarks or 
> cross-references which makes it rather unwildy, so maybe I 
> failed to find it).
>  
>  I'd appreaciate any help (and will remember to send my 
> thanks to the list address and not the digest address as 
> happend last time ;-)
>  
>  
>  Regards
>  CJ

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.