- From: <bugzilla@jessica.w3.org>
- Date: Wed, 05 Feb 2014 02:47:46 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=24500 Bug ID: 24500 Summary: Streamability of dynamic function calls is ambiguous and lacks error scenarios Product: XPath / XQuery / XSLT Version: Last Call drafts Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: abel.braaksma@xs4all.nl QA Contact: public-qt-comments@w3.org Under section 19.8.7.9 Streamability of Dynamic Function Calls (http://www.w3.org/TR/xslt-30/#streamability-of-dynamic-function-calls) we say in the last paragraph: "The operand usage for the other operands (the argument expressions) is in general navigation, because it is not known how the function will make use of any supplied nodes. However, if the static type of the first operand constrains the type of the argument to be atomic, then the operand usage for that argument becomes absorption, and if it constrains it to be a function, the operand usage becomes inspection." The whole paragraph could be rewritten to refer to the already existing type determined usage. If that is not appropriate, the second sentence in this paragraph is ambiguous: do we mean the "first operand" in respect to the first paragraph, i.e. $F, or do we mean the first argument? I think we mean the static type of $F, which can be, for instance, function(xs:string), which has posture absorption for its first argument. In addition, we don't say anything about potential error conditions. For instance, if $F refers to last#0, we should raise a dynamic error (if used in an illegal spot). In other words, the expression $F and its arguments can be streamable, but the actual call is not, which can only be determined once the call is made. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Wednesday, 5 February 2014 02:47:48 UTC