Subject: Re: [xsl] if a condition is not met From: David Carlisle <davidc@xxxxxxxxx> Date: Tue, 15 May 2007 17:29:41 +0100 |
> Can someone, btw, elaborate on the following: Why is it that a statement > like current-group()[some-predicate]/following-sibling::* will return > *all* following sibling and not only the elements that are part of the > current group? because (as you guessed) current_group() returrns original nodes, not copies. this is just the same as in xslt1, <xsl:for-each select="a"> <xsl:copy-of select="following-sibling::*"/> following-sibling::* here would select all siblings of the current (a) node, the way that node was selected (in the for-each) is irrelevant. > To workaround this, I know that you can treat the current-group() > results as a document-node when you copy it into a variable and go from > there. copyig (might) be expensive, an alternative if you want to ensure that a path expression only returns elements in the current group is to go (pathexpression) intersect current-group() But if you are doing current-group()[some-predicate]/following-sibling::* then it looks like you are doing some further grouping on the current group so often it is more natural to do <xsl:for-each-group select="current-group()" group-starting-with="node()[some-predicate]"> ... Then it is automatically constrained to just work within the current group. David ________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] if a condition is not met, Abel Braaksma | Thread | [xsl] Extreme Markup Languages 2007, B Tommie Usdin |
Re: [xsl] if a condition is not met, Abel Braaksma | Date | RE: [xsl] if a condition is not met, Michael Kay |
Month |