- From: <bugzilla@wiggum.w3.org>
- Date: Tue, 10 Mar 2009 16:14:36 +0000
- To: public-qt-comments@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=6677 Summary: bug in static typing checking for transform expression in XQUF Product: XPath / XQuery / XSLT Version: Candidate Recommendation Platform: PC OS/Version: Windows XP Status: NEW Severity: normal Priority: P2 Component: Update Facility AssignedTo: andrew.eisenberg@us.ibm.com ReportedBy: zhen.liu@oracle.com QAContact: public-qt-comments@w3.org In section http://www.w3.org/TR/xquery-update-10/#id-update-typing-transform, the static typing rules is specified for transform expression in XQUF. However, the rule appears to be have following issues: Consider transform expression copy $var := expr modify .... (: some modification on $var ::) return $var The semantics of transform expression is that when modify expression is being evaluated, the $var's value is not changed, however, when evaluating the return expression, the $var's value is changed from the modify expression (that is, snapshot ends and PUL is applied). Thus when we do static type analysis for modify expression, the $var's static type shall be different from the static type of $var when do static type analysis for return expression. Such type distinction before and after modifcation does not appear to be reflected in the XQUF static type analysis rule. That is the statEnv for all the copied variables needs to be recomputed after analysis of the modify expression before evaluating the return expression. Of course, to make static type analysis easier but sound, the type analysis can assign each variable's static type as node() after modification is applied. -- Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug.
Received on Tuesday, 10 March 2009 16:14:47 UTC