Re: [xsl] Does the count() function require access to the whole subtree?

Subject: Re: [xsl] Does the count() function require access to the whole subtree?
From: Michael Kay <mike@xxxxxxxxxxxx>
Date: Sun, 12 Jan 2014 19:27:55 +0000
> Michael, doesn't the count() function require access to the whole subtree?
How would a count be conducted by sitting at the top of a subtree? Perhaps you
meant to say that the count() function is an absorption operation?
>

If you are evaluating count() or exists() on a sequence of nodes S, then when
you encounter a node N that is a member of this sequence you know its impact
on the result as soon as you see its start tag; you do not need to look at its
subtree. This makes it different from, say, sum() or "=". This means that the
existence of overlapping nodes within S is no problem for count() or exists(),
whereas it is a problem for sum() or "=".

Michael Kay
Saxonica

Current Thread