Subject: RE: Re: [xsl] Counting matching elements across two documents From: cknell@xxxxxxxxxx Date: Mon, 17 Jan 2005 09:51:07 -0500 |
Thanks, that did it. Before I sent the message I tried using a variable to represent the main document for use in the for-each section, but I couldn't work out the issue with current(). As for speed, in this application neither of the input documents are going to grow large enough for that to be a concern. -- Charles Knell cknell@xxxxxxxxxx - email -----Original Message----- From: David Carlisle <davidc@xxxxxxxxx> Sent: Mon, 17 Jan 2005 14:34:00 GMT To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] Counting matching elements across two documents <xsl:value-of select="count(//player[number = ./number])" /> The Xpaths number and ./number will always select the same thing so your predicate is the same as true() ie the same as no predicate. I think you want current() not . to get the number of the current player in $roster. //player selects all the players in the current document which is roster.xml at this point. I think you intend that to be in matches.xml in which case it wants to start with $matches not with / where $matches is defined at the top level by <xsl:variable name="matches" select="/"> $matches/matches/week/match/player[lag='W'][number=current()/number] I changed // to an explict path as morally it ought to be faster, but last time I told someone to do that MK pointed out that saxon has optimisations for // (saving previous results) not used in general so it isn't clearly a win. In any case probably using keys would speed things up (or at least make the optimisation explict) but best to get things working before worrying about speed. David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Counting matching element, David Carlisle | Thread | [xsl] namespace-alias question, omprakash . v |
Re: [xsl] namespace-alias question, David Carlisle | Date | [xsl] Entity Questions, Luke Shannon |
Month |