xsl-list
[Top] [All Lists]

RE: Parameter problem

2003-10-02 04:59:57
Hi Dave

i have made the changes as you have said,

        <xsl:template match="PartyList/When [last()]">

                <xsl:param name = "first"/>
                <xsl:param name = "last"  select="@Attendance"/>

                <xsl:variable name="difference" select = "$last -
$first"/>
                <TD><xsl:value-of select="$first"/></TD>
                <TD><xsl:value-of select="$last"/></TD>
                <TD><xsl:value-of select="$difference"/></TD>
        
        </xsl:template>

        <xsl:template match="PartyList/When [1]">

                <xsl:variable name="firstN"><xsl:value-of
select="@Attendance"/></xsl:variable>
                <TD><xsl:value-of select="$firstN"/></TD>
        
                <xsl:apply-templates select="following-sibling::When
[last()]">
                        <xsl:with-param name="first" select="$firstN"/>
                </xsl:apply-templates>

        </xsl:template>

but the parameter 'first' in template PartyList/When [last()]
still does not have a value. And difference is NaN.

marsha

-----Original Message-----
From: David Carlisle [mailto:davidc(_at_)nag(_dot_)co(_dot_)uk]
Sent: Thursday, October 02, 2003 1:30 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Parameter problem



<xsl:template match="PartyList/When [1]">
here your current node is a When element
so here
<xsl:apply-templates select="PartyList/When [last()]">
you are selecting a When grandchild of the current When element.
i suspect that you don't want that, you want your youngest sibling so
that's
<xsl:apply-templates select="following-sibling::When [last()]">

Incidentally don't do
        <xsl:param name = "last"><xsl:value-of
select="@Attendance"/></xsl:param>

or
        <xsl:variable name="difference"><xsl:value-of select = "$last -
$first"/></xsl:variable>

or 

<xsl:with-param name="first"><xsl:copy-of
select="$firstN"/></xsl:with-param>

It makes the system work much harder than necessary.


just use 


        <xsl:param name = "last" select="@Attendance"/>
        <xsl:variable name="difference" select = "$last -$first"/>
       <xsl:with-param name="first" select="$firstN"/>

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. 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
________________________________________________________________________

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



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