[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] accessing last element of node set passed as parameter
Subject: Re: [xsl] accessing last element of node set passed as parameter From: "paul morgan" <pmorg@xxxxxxxxx> Date: Tue, 21 May 2002 12:31:02 -0700 |
Thanks Joerg. I had come up with my solution borrowing from a response from Michael Kay to a question I had about recursively building up a nodeset. Following is Michael's code: <xsl:template name="build"> <xsl:param name="n"/> <xsl:param name="tree"/> <xsl:call-template name="build"> <xsl:with-param name="n" select="$n+1"/> <xsl:with-param name="tree"> <xsl:copy-of select="$tree"/> <a i="{$n}"/> </xsl:with-param> </xsl:call-template> </xsl:template> I had assumed it was building a nodeset ... but obviously (except to me) not. Paul -- On Tue, 21 May 2002 21:15:11 Joerg Heinicke wrote: >Hello Paul, > >you're again creating a RTF and must convert it to a node-set. Either in >your "A" template or by changing the apply-templates again: > ><xsl:variable name="tmp"> > <xsl:copy-of select="$result"/> > <BAR i="{$i}"/> ></xsl:variable> ><xsl:apply-templates select="following-sibling::*[1]"> > <xsl:with-param name="result" select="xalan:nodeset($tmp)"/> ></xsl:apply-templates> > >Regards, > >Joerg > >paul morgan schrieb: >> Thanks David! Some of this is starting to click ... but then again something happens that shuts the clicker down. >> >> Since order is important to me, I decided to heed your warning about the ordering of a union being implementation dependent, so I set about making all of the "BAR" elements be siblings of one another. I replaced: >> >> <xsl:apply-templates select="following-sibling::*[1]"> >> <xsl:with-param name="result" select="$result|xalan:nodeset($new)"/> >> </xsl:apply-templates> </xsl:template> >> >> with: >> >> <xsl:apply-templates select="following-sibling::*[1]"> >> <xsl:with-param name="result"> >> <xsl:copy-of select="$result"/> >> <BAR i="{$i}"/> >> </xsl:with-param> >> </xsl:apply-templates> </xsl:template> >> >> but now I get the following error message: >> >> Can not convert #RTREEFRAG to a NodeList! >> >> at the line: >> >> <xsl:copy-of select="($result/BAR)[last()]" /> >> >> the first time the "A" template is matched with a non-empty value for "result". Shouldn't "result" be a node set? >> >> Paul (I think this language is going to make my head explode) > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > ________________________________________________________ Outgrown your current e-mail service? Get a 25MB Inbox, POP3 Access, No Ads and No Taglines with LYCOS MAIL PLUS. http://login.mail.lycos.com/brandPage.shtml?pageId=plus XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] accessing last element of, Joerg Heinicke | Thread | [xsl] new member, Balaji Ramachandran |
Re: [xsl] accessing last element of, Joerg Heinicke | Date | [xsl] Testing for presence of node,, Joel Konkle-Parker |
Month |