Subject: For expressions and / operator in XPath 2.0 (Was: Re: [xsl] result = node1 * node2 and then get total of all the result from whole document at the end) From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Wed, 2 Jan 2002 15:36:51 +0000 |
Mike wrote: > In XPath 2.0 the answer is > > sum(for $r in //rate return $r/@value * $r/@quantity) I feel sure that this is one of the more contentious aspects of XPath 2.0, but here goes... Why is it that the General Steps have to return nodes? If they didn't, you could do something like: sum( //rate/(@value * @quantity) ) I thought that the answer might be to do with the old set vs. sequence thing, and the fact that for backwards compatibility, the / operator has to union and sort the nodes. However, I can't work out why you can't just say that the / operator performs a union on node identity and a sort on document order; simple typed values have neither node identity nor document order, so sequences of simple typed values are left as they are. Can someone enlighten me? Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] result = node1 * node2 an, Michael Kay | Thread | RE: For expressions and / operator , Michael Kay |
RE: [xsl] Re: XPath incompatibiliti, Elliotte Rusty Harol | Date | [xsl] Re: copying <xsl:stylesheet> , Dimitre Novatchev |
Month |