On 9 March 2010 17:05, Ben Stover <bxstover(_at_)yahoo(_dot_)co(_dot_)uk> wrote:
Assume I have a XML doc where occasionally values appear with leading and
trailing blanks similar to
<aaa>
<bbb>
'3 blanks'somevalue'4 blanks'
</bbb>
</aaa>
Because blanks are probably removed by the mailing list system I put 'n
blanks' in the code above.
In reality real blanks are meant.
So how can I strip all such leading and trailing blanks (nad line breaks)
with XSLT?
The stripping should applied only to "atomic" values. That means that blanks
between e.g.
<aaa> and <bbb> should be kept. So the result should look like
<aaa>
<bbb>somevalue</bbb>
</aaa>
normalize-space() will do that, but it will also compact multiple
spaces down to a single space within the text.... your example doesn't
cover that, so if its an issue post back.
Moreover how can I strip all "atomic" blanks in a whole XML doc and not only
from a particular tag value?
Add a template that matches "text()" and do normalize-space() in that,
ensuring that you also use xsl:apply-templates everywhere instead of
xsl:value-of (which is good practice anyway, for situations just like
this)
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--