RE: [xsl] Stripping Only Newlines from Mixed Content

Subject: RE: [xsl] Stripping Only Newlines from Mixed Content
From: "Rudder, Doug Jr" <Doug.Rudder@xxxxxxxxxxxxxxxxx>
Date: Fri, 5 Oct 2007 13:48:31 -0500
Thank you, sir. You are a scholar and a gentleman, and a patient one at
that.

-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Friday, October 05, 2007 1:29 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] Stripping Only Newlines from Mixed Content

use translate($x, '&#xa;', '')

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

> -----Original Message-----
> From: Rudder, Doug Jr [mailto:Doug.Rudder@xxxxxxxxxxxxxxxxx]
> Sent: 05 October 2007 18:42
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Stripping Only Newlines from Mixed Content
>
> Is it possible to strip only newlines from nodes containing
> mixed content in XSLT 1.0?
>
> I have a situation where incoming XML files occasionally have
> newlines in the middle of text that need to be stripped, but
> the text may also contain mixed content elements. For example:
>
> <p>test <tag>more text</tag> text (TXT)
> and more text after newline.</p>
>
> This should be output as:
>
> <p>test <tag>more text</tag> text (TXT) and more text after
> newline.</p>
>
> However, if I run the XML through an identity transform and
> use normalize-space on the text nodes, I get this:
>
> <p>test<tag>more text</tag>text (TXT) and more text after newline.</p>
>
> Note that the spaces around the nested <tag> element are gone.
>
> The newline needs to be stripped out, but the spaces around
> the nested element need to be retained.
>
> ============================
> Douglas Rudder
> XML Architect
> Wolters Kluwer Health, Clinical Solutions
> 77 West Port Plaza, Suite 450
> St. Louis, MO 63146
> Phone: 314-216-2227
> email: Doug.Rudder@xxxxxxxxxxxxxxxxx
> ============================

Current Thread