The xs:QName constructor function, unlike all the other type constructor functions, has a signature that does not allow the empty sequence as an argument, although it can return the empty sequence. Is this inconsistency an oversight? I cannot find any text that explains why it would be different.
Thanks for pointing this out. The error arose because of incomplete application of the change that brought the xs:QName constructor function into line with other constructor functions in 3.0, by removing the restriction that the supplied argument be a string literal. I have fixed it as an editorial error, but have included a mention in the Changes appendix.