- From: <bugzilla@wiggum.w3.org>
- Date: Wed, 20 May 2009 15:22:26 +0000
- To: public-qt-comments@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=6927
Summary: XQuery 1.1 is not an LL(k) language because of the
optional "outer" keyword
Product: XPath / XQuery / XSLT
Version: Working drafts
Platform: All
OS/Version: All
Status: NEW
Severity: major
Priority: P2
Component: XQuery 1.1
AssignedTo: jonathan.robie@redhat.com
ReportedBy: gabriel.petrovay@28msec.com
QAContact: public-qt-comments@w3.org
Hi all,
XQuery 1.1 is not an LL(k) language because of the optional "outer" keyword
(yes I know XQuery has no keywords).
Take the following 2 correct queries:
1.
for $x in outer for $y in Expr return 2
2.
for $x in outer for $y in Expr return 2 return 3
The parser has a problem when parsing the "outer for" token sequence because it
does not know which production to take next because of the OPTIONAL "outer"
keyword. Is it a nested "outer for" or the "outer" step expression followed by
a simple "for" clause?
Of course that, by reading the whole input you can determine if the expression
is correct, but the language is not anymore an LL(k) one. This is because for
any k > 0, one can find an expression (Expr) having [number of tokens] > k such
that the parser cannot parse the language.
Regards,
Gabriel
--
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 Wednesday, 20 May 2009 15:22:35 UTC