- From: <bugzilla@farnsworth.w3.org>
- Date: Thu, 17 Apr 2008 20:59:40 +0000
- To: public-qt-comments@w3.org
- CC:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=5646 Summary: fn:put() is underspecified Product: XPath / XQuery / XSLT Version: Candidate Recommendation Platform: PC OS/Version: Windows NT Status: NEW Severity: normal Priority: P2 Component: Update Facility AssignedTo: andrew.eisenberg@us.ibm.com ReportedBy: mike@saxonica.com QAContact: public-qt-comments@w3.org Some gaps in the the specification of fn:put(): (a) it nowhere says whether this is an updating expression or not. Presumably this means it isn't. But it behaves in many ways like an updating expression; I would have thought it should be one. (b) it says "The results of fn:put do not become effective until after completion of the query", but it doesn't actually say what is probably intended, which is that the node that is serialized is the post-update node, rather than the pre-update node. (c) It's not clear why put() doesn't use the pending update list in the same way as other updating expressions, and why it's not subject to similar conflict analysis (for example writing two different nodes to the same URI) (d) There seem to be no special static typing rules. Since the static type of put() is always empty-sequence(), it would seem that under static typing it is always an error.
Received on Thursday, 17 April 2008 21:00:14 UTC