[Monetdb-developers] XRPC syntax
Hi Jennie, hi Peter,
I am currently looking into the XRPC syntax. Primarily I wanted to give you feedback to what you wrote in your Plan-X submission.
So you are defining the syntax to be
XRPCCall ::= "execute" "at" URILiteral FunctionCall
Lateron, however, you allow more than just a literal URI, but rather an XQuery expression. So `URILiteral' is definitely wrong here.
Once you changed this to, say, ExprSingle, you end up with ambiguity in your parser. Consider
execute at "foo" eq ("bar")
(I couldn't think of a better example ad hoc.) What we have here is an ambiguity: we don't know whether `eq' is supposed to be a function call, or if it is the binary operator `eq', followed by another expression in parenthesis.
So I will take the freedom to modify your syntax proposal and do it in a more XQuery-like style:
"execute" "at" "{" Expr "}" "{" FunctionCall "}"
This avoids the ambiguity and should make it rather easy to parse.
...already hacking...
Jens
participants (1)
-
Jens Teubner