Subject: Re: [xsl] selecting from sequences From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx> Date: Thu, 18 Dec 2008 16:08:18 +0000 |
> In my style sheet I make a selection of the elements and pass that to a > template. In that template I can reference this sequence as $seq. > > Selecting from $seq appears to be not that easy, because I can't use axes. > Axes have a document scope whereas I want to do something within the > sequence. > If for example $seq contains elements a, b, c, b, e: > > how do I select > - everything before the first b > - everything from the first b to the end > - the position of the first b? > > As $seq[self::b][1]/preceding-sibling::* is not good because it possibly > selects element outside the sequence, but are preceding-siblings in the > document. $seq[self::b][1]/preceding-sibling::* intersect $seq would restrict the elements to those in the sequence The alternative is to copy the nodes into a variable and use that instead of a sequence, or course refactor your transform so that the selection and processing aren't separate steps (usually they're not) -- Andrew Welch http://andrewjwelch.com Kernow: http://kernowforsaxon.sf.net/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] selecting from sequences, Michael Kay | Thread | Re: [xsl] selecting from sequences, Vladimir Nesterovsky |
Re: [xsl] selecting from sequences, Vladimir Nesterovsky | Date | Re: [xsl] selecting from sequences, Vladimir Nesterovsky |
Month |