Type errors with xsd:boolean arguments

There seems to be a clash between:
  "Functions invoked with an argument of the wrong type will produce a
  type error." (11.2)
vs
  "When a operand is coerced to xs:boolean through invoking a function
  that takes a xs:boolean argument, the following rules apply: ..."
  (11.2.2)

which seems to imply that an arguments to a function that are of type
xsd:boolean are always co-erced and never produce a type error?

If that's the case, I suggest changing 11.2 something like:
  Functions invoked with an argument of the wrong type (except
  xsd:boolean) will produce a type error.
  Functions requiring an argument of type xs:boolean are coerced to
  xs:boolean using the EBV rules in section 11.2.2

(Maybe there should be a new sub-section called "Type Errors"?)

Dave

Received on Monday, 19 September 2005 12:50:52 UTC