[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] Xsl:when - Can I pass Conditions at runtime?
- From: "Andrew Welch" <andrew.j.welch@gmail.com>
- To: "binu.idicula@wipro.com" <binu.idicula@wipro.com>
- Date: Thu, 1 Mar 2007 10:06:20 +0000
(I didn't spot this was xml-dev and originally replied to the sender
only - why does xml-dev default to the sender and not to the list?
Its really annoying... surely its best to have all responses in the
archives...)
On 3/1/07, binu.idicula@wipro.com <binu.idicula@wipro.com> wrote:
>
>
> Hi All,
> I would like to have a XSLT - which selects some nodes based on
> condition passed from external system.
>
> <xsl:param name="condition"/>
> <xsl:param name="value"/>
> ...
> ...
> <xsl:template match="/A/B">
> <xsl:variable name="cond" select="$condition"/>
> <xsl:variable name="val" select="$value"/>
> <xsl:choose>
> <xsl:when test="$cond = $value">
> </xsl:when>
> <xsl:choose>
> </xsl:template>
>
> I tried this, by passing
> Transformer.setParameter("condition", "nameOfPerson");
> Transformer.setParameter("value", "Sion");
>
> But it seem NOT as WORKING.
> Any corrections?
You are checking whether the string "nameOfPerson" is equal to the
string "Sion", whereas you really want to check if the element with
that name has a string value equal to $value, eg:
<xsl:when test="*[local-name() = $condition] = $cond">
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]