Subject: Re: Complex for-each comparison problem
From: Sven Waibel <sven.waibel@xxxxxxxx>
Date: Thu, 02 Dec 2004 11:51:29 +0100
|
Thanks all, i understand it all now.
It works!
Sven
Sven Waibel wrote:
> It's not the original xml file, but it's a simplified example of it.
> It's well-formed, checked with xmlspy.
>
> I have some questions:
>
> What do you mean with "nameofyourunnamedelement"?
>
> What is the "/@s" at the end?
>
> Why "@value", i thought you get the content of an CDATA field with "value" simply.
>
> Thanks
> Sven
>
>
>><xsl:for-each select="itable[@id = i/paramter/nameofyourunnamedelement/@value]/@s">
>> <xsl:value-of select="."/>
>></xsl:for-each>
>
>
>
>
> Jarno.Elovirta@xxxxxxxxx wrote:
>
>
>>Hi,
>>
>>
>>
>>>i wrote days before about CDATA compare problems and now i
>>>know my problem is at another point.
>>>
>>>xml:
>>>-------------------------------------
>>><itables>
>>> <itable id=1 name="h">
>>> <i>
>>> <paramter>
>>> <value="<![CDATA[7]]>"/>
>>
>>
>>The last time I check XML 1.0 spec, an element had to have a name and LESS-THAN SIGN was not allowed in attribute value.
>>
>>
>>
>>> <value="<![CDATA[8]]>"/>
>>> </paramter>
>>> </i>
>>> <itable id=2 name="s">
>>> <i>
>>> <paramter>
>>> <value="<![CDATA[1]]>"/>
>>> <value="<![CDATA[5]]>"/>
>>> </paramter>
>>> </i>
>>> </itable>
>>></itables>
>>>-------------------------------------
>>>
>>>I want to compare each itable/@id with each value:
>>>
>>>itable id=1 with
>>> <![CDATA[7]]>
>>> <![CDATA[8]]>
>>> <![CDATA[1]]>
>>> <![CDATA[5]]>
>>>
>>>itable id=2 with
>>> <![CDATA[7]]>
>>> <![CDATA[8]]>
>>> <![CDATA[1]]>
>>> <![CDATA[5]]>
>>>
>>>and then i want give out the itable name where id = value.
>>
>>
>><xsl:for-each select="itable[@id = i/paramter/nameofyourunnamedelement/@value]/@s">
>> <xsl:value-of select="."/>
>></xsl:for-each>
>>
>>>I hope i expressed myself clearly.
>>
>>
>>It always helps if your example XML is well-formed, that way people don't have to quess or attempt error recovery.
>>
>>Cheers,
>>
>>Jarno
|