Re: [xsl] in search for more elegant XPaths

Subject: Re: [xsl] in search for more elegant XPaths
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Wed, 22 Apr 2009 06:01:46 -0700
Have you tried to use RegEx-es with the matches() and replace() function?

You could create an <xsl:function> for a frequently used (sub)
expression anduse such function(s) within future expressions, thus
gaining in usability, readability and reliability, not to mention
saving a lot of time.


--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play



On Wed, Apr 22, 2009 at 5:51 AM, Huditsch, Roman (LNG-VIE)
<Roman.Huditsch@xxxxxxxxxxxxx> wrote:
> Hi,
>
> 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">
> B  B  B  B <xsl:param name="case" as="element()"/>
> B  B  B  B <xsl:choose>
> B  B  B  B  B  B  B  B <xsl:when test="starts-with($case, 'SG') or
> starts-with($case, 'LSG') or starts-with($case, 'BSG')">
> B  B  B  B  B  B  B  B  B  B  B  B <xsl:text>sozial</xsl:text>
> B  B  B  B  B  B  B  B </xsl:when>
> B  B  B  B  B  B  B  B <xsl:when test="starts-with($case, 'ArbG') or
> starts-with($case, 'LAG') or starts-with($case, 'BAG')">
> B  B  B  B  B  B  B  B  B  B  B  B <xsl:text>arbeit</xsl:text>
> B  B  B  B  B  B  B  B </xsl:when>
> B  B  B  B  B  B  B  B ...
> B  B  B  B </xsl:choose>
> </xsl:function>
>
> Is there a way to "normalize" those multiple starts-with()?
>
> I very often testing for element nodes that have character content with
> *[string-length(normalize-space(.))&gt;0]
> I am sure that you can point me to a better filter expression...
>
> Thanks a lot,
> Roman
>
> Mag. (FH) Roman Huditsch
> B Teamleader XSLT-Development
>
> Tel.: +43 (1) 534 52 - 1514
> Fax: +43 (1) 534 52 - 146
>
> Roman.Huditsch@xxxxxxxxxxxxx
>
> LexisNexis Verlag ARD Orac GmbH & Co KG
> Marxergasse 25, 1030 Wien
> FN 8333f, Handelsgericht Wien
> http://www.lexisnexis.at/

Current Thread