This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
I'm not sure if this is indeed a bug in the test suite, the spec or in my understanding of the spec ... fn-deep-equal-mix-args-011 and fn-deep-equal-mix-args-012 do a deep-equal between strings and anyURIs. a) Type promotion will not take place as the expected arguments of the function deep-equal() are item()* - correct? b) Comparison is done using the eq operator, which does no type promotion. According to http://www.w3.org/TR/xquery/#mapping there is no mapping for the eq operator on xs:anyURI and xs:string It's probably not what's intended, but to my reading the spec mandates to return false to something like "fn:deep-equal( xs:anyURI("www.example.com") , "www.example.com")"
I believe that xs:anyURI to xs:string promotion is defined in a section just prior to the one that you cited, http://www.w3.org/TR/xquery/#promotion. This section says, in part, the following: "URI type promotion: A value of type xs:anyURI (or any type derived by restriction from xs:anyURI) can be promoted to the type xs:string." As such, I believe that this test case is correct as is. Please close this bug report if you agree with this resolution.
Indeed, that's another exception from the rule.