This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
xs:anyURI("http:\\invalid>URI\someURI") expects an error thrown due to an invalid xs:anyUri, but it can be escaped to a valid URI "http:%5C%5Cinvalid%3EURI%5CsomeURI", so should not throw an error.
I think the processor has some latitude on this one. The XML Schema spec says that after escaping it must be a "legal URI according to [RFC 2396], as amended by [RFC 2732]. The term "legal URI" isn't actually used or defined in those specs. This URI conforms to the "general syntax" for URIs described in section 3 of the RFC, but not to "hierarchic syntax" used for http URIs. The Schema spec says in a non-normative note that "Each URI scheme imposes specialized syntax rules for URIs in that scheme, including restrictions on the syntax of allowed fragment identifiers", and that minimally-conforming processors are not expected to validate against these specialized syntax rules; but it's not clear that this Note makes it wrong for a processor to check that a URI in the http scheme adheres to the syntax of a hierarchic URI.
A fix has been attempted in CVS, and XQTS_current.zip has been updated to contain the new change. If it can be verified that the change is correct, it would be appreciated. If this resolution is satisfiable, feel free to change status to closed. Otherwise, reopen this report. If no opinion on the resolution is expressed within two weeks, I will change status to closed. This change to this report was part of a batch-change of several reports.