This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
This test expects XTDE0045. I don't think that's correct. Under the rules in 2.3.3, mode "a" is an eligible mode because (rule #3) it is named in xsl:package/@default-mode
We say, in that section: If no initial mode is supplied explicitly, then the initial mode is that named in the default-mode attribute of the (explicit or implicit) xsl:package element of the top-level package or in the absence of such an attribute, the unnamed mode. And then we say that something is eligible as an initial mode if: M is explicitly declared in an xsl:mode declaration within P, and has public or final visibility (either by virtue of its visibility attribute, or by virtue of an xsl:expose declaration). But we also say: M is named in the default-mode attribute of the (explicit or implicit) xsl:package element of P. I think this test was written before we wrote up the new rules on "eligible modes", which came after a long discussion where the previous draft required an initial mode to be public. Not anymore, so I think you are correct. And I believe the discussion at the time allowed this because this would "allow an access point into a stylesheet that is not publicly visible", so this forces the use of a certain initial mode and the user cannot select something else. So yes, the test is wrong now.
While mode-1701a was long fixed, I noticed that mode-1705a had the same issue and incorrectly expected XPDE0045. Fixed that test (default-mode is always eligible as initial mode) and added a variant for the error scenario (mode-1705b) and another variant for scoping of default-mode (it must appear on the root XSLT element to make a mode eligible). Marking this bug as resolved.