The bug entry is here:

and the status is:

This is fixed in, and will also be fixed in any maintenance release on the 9.3 branch post

Michael Kay

On 04/01/2012 13:30, Norman Walsh wrote:
Michael Kay <> writes:
On 02/12/2011 00:06, Norman Walsh wrote:
Hi Michael,

In my XProc processor, when a "p:when" condition is evaluated,
such as this one:

   <p:when test="string-length($href)>  0">

I attempt to compute the effective boolean value of that expression
by evaluating "boolean(string-length($href)>  0)".

In the course of debugging, I discovered the weirdest thing. The
result of evaluating "boolean(string-length($href)>  0)" isn't true() or
false(), it's the value of $href.

Thanks. Yes - an over-eager optimization. Injudicious combination of the 
two rules

boolean(boolean(X)) ==> boolean(X)


boolean(string-length(Y[string]) > 0) ==> boolean(Y)

Actually, I think it can affect any standalone XPath expression whose 
top-level expression is a call on boolean.

I will do a 9.3 patch.
Is it possible that as of that patch is still not present?
(No big deal if it isn't, I'm just doing a little bookkeeping on my

                                        Be seeing you,

Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual 
desktops for less than the cost of PCs and save 60% on VDI infrastructure 
costs. Try it free!

saxon-help mailing list archived at