On Mon, 2014-06-16 at 13:00 +0000, Kerry, Richard richard.kerry@xxxxxxxx
wrote:
> I tend to view (*) xsl:choose as similar to C's "switch", which needs
> to do a single calculation to work out which branch to run.
> (*) I may well be wrong in this.....
xsl:choose is like a sequence of C if statements in practice, and is
what yu want for your C++-like example.
But I think it better to think of xsl:choose in the mathematical sense,
e.g.
A := f(x)
0 when x <= 1
17 when x <= 7
A(x - 1) . A(x - 2) when x^2 + 1 is prime
31x / 7 otherwise
That is, I prefer to think of XSLT as a functional language in which one
is describing the end result rather than as a procedural language with
loops and returns.
There's no concept of an "early return" from a mathematical function,
nor from an XSLT one.
Liam
--
Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/
Pictures from old books: http://fromoldbooks.org/
Ankh: irc.sorcery.net irc.gnome.org freenode/#xml
|