Subject: RE: [xsl] extracting preceding nodes with certain exceptions From: "Michael Kay" <mhk@xxxxxxxxx> Date: Wed, 17 Sep 2003 04:43:10 +0100 |
> > Hello all, > I need some help with the following: > I have (but could be variable): > <tokens> > <token position="1"/> > <token position="2"/> > <token-group> > <row> > <token position="3"/> > <token posistion="4"/> > </row> > <row> > <token position="5"/> > <token position="6"/> > </row> > </token-group> > </tokens> > > I would like to sum the values of all preceding nodes of > <token> #6 that > are <token>s, but which are not descendants of the preceding > sibling of > its ancestor <row>, that is I want to exclude <token>s #3 and > #4. In XPath 2.0 you can write preceding::token except ancestor::row/preceding-sibling::token Unfortunately XPath 1.0 has no direct equivalent of the "except" operator. Some processors offer the EXSLT set:difference() extension function or an equivalent, or you can do "A except B" by writing the rather expensive construct: A[count(.|B) != count(B)] Michael Kay I have sum(ancestor::row//token[@position < > $token-position]) where > in this case $token-position = 6, but that excludes the tokens in > positions 1 and 2. I think I am missing something simple here, but > suggestions are welcome. > thanks in advance, > Matthew L. Avizinis > Gleim Publications, Inc. > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] extracting preceding nodes wi, Matthew L. Avizinis | Thread | [xsl] Server-side transform with .a, Noelle |
RE: [xsl] Passing Parameters to mem, Michael Kay | Date | RE: [xsl] Count() nodes ??, Michael Kay |
Month |