This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 22353 - [XQ3TS] prohibit-typed-data-2-ns
Summary: [XQ3TS] prohibit-typed-data-2-ns
Status: CLOSED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XQuery 3 & XPath 3 Test Suite (show other bugs)
Version: Candidate Recommendation
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: O'Neil Delpratt
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-06-13 16:36 UTC by Tim Mills
Modified: 2013-06-21 15:51 UTC (History)
2 users (show)

See Also:


Attachments

Description Tim Mills 2013-06-13 16:36:48 UTC
The functions module:nine() and module:ten() both produce typed data and are being consumed by a module which prohibits use of typed data.  

Were they to produce untyped data, an expected result would be false.  Since this is not the case, I can't see how an expected result of false can be expected.

I would be grateful if someone could explain it with reference to the current text in

https://www.w3.org/Bugs/Public/show_bug.cgi?id=20828#c6

(unless this has been superseded by something else)?

I can't see anything in here which suggests that the typed data from the function calls gets stripped, except perhaps

"If an XQuery implementation does not provide the Typed Data Feature, it MUST
guarantee that:

...

3. Elements constructed by the query always have the type xs:untyped;
attributes constructed by the query always have the type xs:untypedAtomic."

but this doesn't hint at the mechanism by which this would be achieved when operating on data from another module (or from, say, a call to fn:doc).
Comment 1 Ghislain Fourny 2013-06-13 16:46:54 UTC
I think it is in comment 9, which states the approval of the proposal:

https://www.w3.org/Bugs/Public/show_bug.cgi?id=20828#c9

If data arrives from another module and is typed, the module (with Typed Data deactivated) treats this data as untyped. I guess it comes down to changing the type annotations to xs:untyped and xs:untypedAtomic, possibly recomputing the typed values (corresponding to untyped data) from the string values.

The other alternative which was considered was raising errors.
Comment 2 Michael Kay 2013-06-13 17:08:19 UTC
We intend in Saxon to impose a restriction that either all modules accept typed data or none of them do. Since products are allowed to require typed-data everywhere and are also allowed to require typed-data nowhere, I assume they are also allowed to offer users a choice between these two extremes without offering any intermediate position.
Comment 3 Michael Kay 2013-06-21 15:16:13 UTC
The tests for require/prohibit facility have been withdrawn, along with the facility itself.