Subject: RE: disappearing line breaks within an element
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 23 Jan 2009 12:33:01 -0000
|
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 
>
>
> 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.
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 .


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 
 becomes a
> line break. I suppose this is why I fail with the following
> tokenization?
>
> <xsl:for-each select="fn:tokenize(.,'
' )">
> <xsl:if test="(fn:string-length(fn:normalize-space (.)) > 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=" "
> string="&nbsp;" />
> <xsl:output-character character="
"
> string="<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
|