This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: xpath based on condition
- From: Dimitre Novatchev <dnovatchev at yahoo dot com>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Wed, 14 Aug 2002 12:09:54 -0700 (PDT)
- Subject: [xsl] Re: xpath based on condition
- Reply-to: xsl-list at lists dot mulberrytech dot com
Use:
<xsl:variable name="xpath"
select="//Header[$Path]/*[name()=$Path]
|
//Header[not($Path)]"/>
Because the conditions in the two predicates negate each other, only
one of the operands of the above union will actually be selected.
Cheers,
Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL
--- Joerg Heinicke <joerg dot heinicke at gmx dot de> wrote:
> Hello Aruniima,
>
> you have to use <xsl:copy-of select="//Header/*[name()=$Path]"/>, but
> with this you will create a Result Tree Fragment, which can be
> converted back to a node set via an extension function.
>
> But maybe it's enough to use:
>
> <xsl:variable name="xpath-header" select="//Header"/>
>
> <xsl:variable name="xpath" select="$xpath-header/*[name()=$Path]"/>
>
> and do the logic whether to use $xpath-header or $xpath later. Maybe
> you can also use
>
> <xsl:variable name="xpath" select="//Header/*[name()=$Path] |
> //Header"/>
>
> (UNION of both node sets) and choose later the correct node/value
> from
> this node set.
>
> Regards,
>
> Joerg
>
>
>
> __________________________________________________
> Do You Yahoo!?
> HotJobs - Search Thousands of New Jobs
> http://www.hotjobs.com
__________________________________________________
Do You Yahoo!?
HotJobs - Search Thousands of New Jobs
http://www.hotjobs.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list