Subject: [xsl] Parameter problem From: "Marsha Salo" <Marsha@xxxxxxxxxxxxx> Date: Thu, 2 Oct 2003 12:47:35 +0200 |
HI I am trying to calculate the difference between the first and last elements in a node set. In the template PartyList/When[1] i have declared a global variable firstN, and i am passing it as a parameter to the template PartyList/When[last()]. The problem; in the template PartyList/When[last], the parameter (first) does not have a value associated with it. My xml file: <PartyTime> <PartyListType="Energy"> <When DateTime="Thursday 12 November 2002 11:51" Attendance="50"/> <When DateTime="Thursday 09 November 2002 11:53" Attendance="51"/> <When DateTime="Thursday 28 November 2002 11:58" Attendance="56"/> <When DateTime="Thursday 30 November 2002 16:55" Attendance="57"/> </PartyList> </PartyTime> Mt xsl file: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <HTML> <HEAD> <TITLE>Party List</TITLE> <LINK REL="stylesheet" TYPE="text/css" HREF="party.css" /> </HEAD> <BODY> <H1>Party Report</H1> <H3>From <xsl:value-of select="//DateFrom"/> To <xsl:value-of select="//DateTo"/></H3> <H3></H3> <xsl:apply-templates /> </BODY> </HTML> </xsl:template> <xsl:template match="PartyList"> <H3>PartyList</H3> <xsl:apply-templates select="When [@Attendance]"> <xsl:sort select="@Attendance" order="ascending" data-type="number"/> </xsl:apply-templates> </xsl:template> <xsl:template match="PartyList/When [last()]"> <xsl:param name = "first"/> <xsl:param name = "last"><xsl:value-of select="@Attendance"/></xsl:param> <xsl:variable name="difference"><xsl:value-of select = "$last - $first"/></xsl:variable> <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> <!-- I included this to test if the variable has a value - and it does--> <xsl:apply-templates select="PartyList/When [last()]"> <xsl:with-param name="first"><xsl:copy-of select="$firstN"/></xsl:with-param> </xsl:apply-templates> </xsl:template> </xsl:stylesheet> I know there are many parameter problems in the list, but can't seem to find the answer. Any help would be much appreciated. Kind Regards marsha XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Re: removing - ' - , Yago Alvarado | Thread | Re: [xsl] Parameter problem, David Carlisle |
RE: [xsl] removing - ' - Is i, Sergiu Ignat | Date | RE: [xsl] Handling Mixed Child Elem, Americo Albuquerque |
Month |