This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
XTSE0260 should be raised if an xslt element is required to be empty, and XTSE0010 if any of its required attributes are wrong, or its content is incorrect. In the case of: <xsl:param name="x" required="yes"> Fail with XTSE0260 | XTSE0010 </xsl:param> the content MUST BE (is required to be) empty, so we use XTSE0260. But one could also argue that the content is incorrect to its semantics (Saxon raises XTSE0010, Exselt XTSE0260). My guess would be: XTSE0260 is the correct error here.
I think with static errors it's often hard to be precise about error codes. For example if an attribute name is misspelt then you can either report that a required attribute is missing or that a disallowed attribute is present. Similarly here: you can argue that if required="yes" the content must be empty, or you can argue that if the content is non-empty, then you can't specify required="yes". I don't think we should spend time on this.
Yes, in retrospect I agree (my programmer and me came to the same conclusion in the end). I'll close with WORKSFORME.