|
Subject: Re: [xsl] Re: Determining whether no single instance of a specific node exists From: Mark Peters <markpeters.work@xxxxxxxxx> Date: Fri, 5 Jun 2009 09:00:57 -0400 |
Hi Everyone,
<xsl:when test="count(not(b/c)) >= 1">
This statement looks correct, but it isn't working for me. The
statement filters the sets of <b/> nodes where the first node does not
contain <c/>. But if the first <b/> node in the set contains a <c/>,
then the set is not filtered. It looks like the count() function is
only looking at the first <b/> node.
I tried the following statement instead:
<xsl:for-each select="attributeList/attribute">
<xsl:variable name="counter" select="count(not[notChangeable])"/>
</xsl:for-each>
<xsl:choose>
<xsl:when test="$counter >= 1">
...
But the processor replied that $counter was not set.
I tried test="not(b/c)" earlier, with the same results as the first
statement in this email: The statement appears to filter on the first
<b/> node in the set only.
Thanks,
Mark
On Thu, Jun 4, 2009 at 2:37 PM, Michael Dykman<mdykman@xxxxxxxxx> wrote:
> On Thu, Jun 4, 2009 at 2:27 PM, Mark Peters <markpeters.work@xxxxxxxxx>
wrote:
>> Sorry, my XSL examples weren't quite right. I'm trying to determine
>> whether no instance of <c/> exists for each <b/> set.
>>
>> So, in my XSL document, assume I'm processing each <a/> node.
>>
>> 1,
>> <xsl:when test="not(b/c)">
>>
>> 2.
>> <xsl:when test="count(not(b/c)) >= 1">
>>
>> Thanks,
>> Mark
>>
>>
>> On Thu, Jun 4, 2009 at 2:20 PM, Mark Peters <markpeters.work@xxxxxxxxx>
wrote:
>>> Hi Everyone,
>>>
>>> I have the following XML document:
>>>
>>> <a>
>>> <b/>
>>> <b/>
>>> <b/>
>>> </a>
>>> <a>
>>> <b/>
>>> <b/>
>>> <b>
>>> <c/>
>>> </b>
>>>
>>> </a>
>>> <a>
>>> <b/>
>>> <b/>
>>> <b/>
>>> </a>
>>>
>>> For each <b/> set, I want to apply a transformation only if no single
>>> instance of <c/> exists. I know how to check whether a node does
>>> exist, but not how to check whether no single instance of the node
>>> exists.
>>>
>>> I've tried the following conditional statements without success:
>>>
>>> 1,
>>> <xsl:when test="not(a/b/c)">
>>>
>>> 2.
>>> <xsl:when test="count(not(a/b/c)) >= 1">
>>>
>>>
>>> What conditional statement should I use?
>>>
>>> Thanks in advance for any help.
>>>
>
> Are you looking for something along the line of
>
> <xsl:when test="not(count(b/c) >= 1)">
> ??
> --
> - michael dykman
> - mdykman@xxxxxxxxx
>
> - All models are wrong. Some models are useful.
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Re: Determining whether n, Mark Peters | Thread | Re: [xsl] Re: Determining whether n, David Carlisle |
| Re: [xsl] linkedin discussion of "c, Florent Georges | Date | Re: [xsl] linkedin discussion of "c, Dimitre Novatchev |
| Month |