xsl-list
[Top] [All Lists]

RE: need help with XSL statement (location path parenthesis problem)

2004-03-29 06:17:09

I'm not sure your '*correct number is x*' statements match the example
xml you have provided, but 2 xpaths that meet your description are:

<xsl:value-of select="count(report[code/@type = 'a' or code/@type =
'b'][code[last()]/@type = 'a'])"/>
 
and
 
<xsl:value-of select="count(report[code/@type = 'a' or code/@type =
'b'][code[last()]/@type = 'b'])"/>

Respectively (when the template is processing <reportlist>).

Are you sure about the xml you've posted?

Andrew



Hi,
I have small XSL example which is posing rather large 
difficulty... I think due to the use of parenthesis needed 
for document order location path.  Is there an XML guru that 
can help me with the correct statement 
for the example below?  Thanks in advance.
  --Alan


In the following XML document, I need to be able to query the 
following:

1)  The number of reports which are coded with either an "a" 
or "b" where the last code (in document order) which is 
either an "a" or "b" is an "a".

*correct number is 3 *


2)  The number of reports which are coded with either an "a" 
or "b" where the last code (in document order) which is 
either an "a" or "b" is a "b".

*correct number is 1*


<?xml version="1.0" encoding="UTF-8"?>
<reportlist>
    <report>
        <code type="a"/>
        <code type="b"/>
        <code type="c"/>
    </report>
    <report>
        <code type="a"/>
        <code type="b"/>
        <code type="a"/>
    </report>
    <report>
        <code type="z"/>
        <code type="a"/>
        <code type="d"/>
    </report>
    <report>
        <code type="a"/>
        <code type="e"/>
        <code type="f"/>
    </report>
    <report>
        <code type="e"/>
    </report>
</reportlist>



<Prev in Thread] Current Thread [Next in Thread>