[Home] [By Thread] [By Date] [Recent Entries]

Subject: Re: Optimising XSLT 2.0 restructuring of large SVRL files (Saxon-HE 12.9)
From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 26 May 2026 08:45:01 -0000
On 26/05/2026 10:32, Susanne Wunsch susanne.wunsch@xxxxxxxxxxxxx wrote:
that change works perfectly -- thank you!

Just to make sure I understand it: could someone briefly explain the
semantic difference between the two formulations?


I think you had something like

B B current-group() except foo

where that would be a set operation on the current-group() and the
elements selected by foo which is short for child::foo which would be
evaluated with the context node of the xsl:for-each-group; your context
node doesn't have foo children, or at least you are not looking to
exclude them, rather, from the current group, you want to exclude those
that are not foo elements so that became

B B current-group()[not(self::foo)]

I think XPath 4 is going to change the semantics of the except operator,
I would need to look up whether your attempted use of except would work
as you intended with the new semantics.

Current Thread
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member