Subject: Re: in search for more elegant XPaths
From: Martin Honnen <Martin.Honnen@xxxxxx>
Date: Wed, 22 Apr 2009 14:59:17 +0200
|
Huditsch, Roman (LNG-VIE) wrote:
I am thinking about a way to make some XPaths, that I'am using quite
often, more "elegant".
Please take for example:
<xsl:function name="ln:getCaseType">
<xsl:param name="case" as="element()"/>
<xsl:choose>
<xsl:when test="starts-with($case, 'SG') or
starts-with($case, 'LSG') or starts-with($case, 'BSG')">
If you think that regular expressions are more readable then you could use
<xsl:when test="matches($case, '^(SG|LSG|BSG)')">
It could even be compacted to
<xsl:when test="matches($case, '^[LB]?SG')">
I very often testing for element nodes that have character content with
*[string-length(normalize-space(.))>0]
*[normalize-space(.)]
should suffice.
--
Martin Honnen
http://msmvps.com/blogs/martin_honnen/
|