Re: [xsl] Comparing CDATA value and attribute

Subject: Re: [xsl] Comparing CDATA value and attribute
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 24 Nov 2004 10:10:51 GMT
>  Good morning,
> 
>   i got it.
> 
>   You have to look "inside" the value, because of the xml file <value><![CDATA[1]]></value>
> 
>   I solved it this way:
> 
>   <xsl:if test="contains(parameter/value,@id)">
>   ..
> 
>   It's not a real comparison, but it works for me.


contains only tests if the string value of @id is a substring of the
string value of the value element, not if they are equal. 

You presumably want

<xsl:if test="parameter/value= @id">

although noeither of tehse forms match the sample  input that you showed
before.

>    xml:
>    -------------------
>    <parameter>
> 	   <value><![CDATA[1]]></value>
>    </parameter>
> 
>    <itable id="1">
>    ..
>    </itable>


If your input is of that form you need

<xsl:if test="parameter/value= itable/@id">

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

Current Thread