[xsl] Is the semantics of the "or" operator implementation-dependent?

Subject: [xsl] Is the semantics of the "or" operator implementation-dependent?
From: "Costello, Roger L. costello@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 16 Sep 2014 12:16:24 -0000
Hi Folks,

Upon experimentation I discovered that Saxon has this behavior:

	false() or error()  	raises an error

	error() or false()	raises an error

	true() or error()	returns true

	error() or true()	returns true

Will every XSLT processor (XPath engine) have the same behavior as Saxon?

I found this paragraph in the XPath 2.0 specification:

	In XPath 1.0, it was defined that with an expression of the form A and B,
	B would not be evaluated if A was false. Similarly in the case of A or B, B
	would not be evaluated if A was true. This is no longer guaranteed with
	XPath 2.0: the implementation is free to evaluate the two operands in
	either order or in parallel.

That last sentence leads me to think that an XSLT processor could have this
behavior:

	true() or error()	raises an error

	error() or true()	raises an error

Are there any XSLT processor (XPath engine) with this behavior?

Is the semantics of the "or" operator implementation-dependent?

/Roger

Current Thread