w3c / qt3tests

Tests for XPath and XQuery
27 stars 17 forks source link

Question about test-case uri-collection-901 and uri-collection-903 #43

Open adamretter opened 2 years ago

adamretter commented 2 years ago

I am a little confused by test cases uri-collection-901 and uri-collection-903, see: https://github.com/w3c/qt3tests/blob/master/fn/uri-collection.xml#L66

Basically they look like this:

  <test>uri-collection(())</test>
  <result>
     <error code="FODC0002"/>
  </result>

If I am interpreting the XP 3.1 spec correctly, then I think the result they are asserting might be too strict.

The spec for fn:uri-collection states:

The zero-argument form of the function returns the URIs in the default URI collection described in Section C.2 Dynamic Context Components.

So I looked up the default URI collection definition in the Dynamic context here: https://www.w3.org/TR/xpath-31/#id-xp-evaluation-context-components, and it states:

Default URI collection | global; overwriteable by implementation

So if I understand it, an implementation is free to set any default URI collection they wish. If that is the case, would I be permitted to send a PR to change the result of the tests to be something like:

  <test>uri-collection(())</test>
  <result>
     <any-of>
       <assert>fn:not(fn:empty($result)) and every $uri in $result satisfies $uri instance of xs:anyURI</assert> 
       <error code="FODC0002"/>
     <any-of>
  </result>

Kind regards.