This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
In the main document, 2.4.2 "FLWOR Expressions" states that let (for, where, ...) must contain either simple or updating expressions. In the Use Case "WS" - XQuery for Web Services, Q2 defines a sequential function local:check-user-and-log($username as xs:string). This function is used in a FLWOR expression in the main query: let $user := replace($request/url, "^http://.*/([^/]+)/add$", "$1") let $blog := local:check-user-and-log($user) return ( .... If my understanding is right and the semantics have not changed from what is currently stated in the documents, I'd suggest moving these two variables into a block, where variable initializers might be sequential expressions.
Hi Peter, Thanks for your comments - that's definitely a bug in the published use cases. However the expression category rules will change again in the next working draft, and I believe this use case will become legal. John
The XQuery WG discussed this on January 12th, and agreed that this bug has already been rendered moot by changes yet to be published in the XQuery SX specification. If you agree with this resolution, please go ahead and close this bug.