This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
In an xsl:catch, several variables are automatically bound, to access error details (err:code, err:description, etc.)[1] The type of err:description is defined to be xs:string. What is it supposed to be bound to in the following case (i.e. when invoking error() without any description string): <xsl:try select="error(QName('ns', 'code'))"> <xsl:catch> <xsl:value-of select="$err:description"/> </xsl:catch> </xsl:try> Note that XQuery 1.1 defines the equivalent variable (in its own grammar) to be of kind xs:string?, so optional. My humble opinion is that XQuery is correct here.
Agreed, this needs to be fixed. (Not formally discussed by the WG, but discussed by some WG members after the close of the meeting).
Change applied.