-
-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Incompatibilities KDL 2 <-> Query #489
Comments
uggghhh yes I thought I'd made them And yes, as you say, Probably all the current
This one is particularly of note:
You mentioned the So while that means We're gonna have to seriously revisit this. I think it's safe to say that reserving those comparison characters isn't part of the possible design space at this point. But that means we can't do the equivalent of the css |
Based on my (very limited) experience writing & testing a KPath parser, I'd like to suggest a few changes:
Then there are a few gaps:
|
I'm trying to write a parser for KQL so I'm taking a look at the query spec, and I've noticed two issues:
lorem+ipsum
is a valid identifier but+
is an operator and the query spec doesn't require space around operators. Should this be interpreted as "look for a node namedlorem+ipsum
"? Or does this instead mean "look for a node namedipsum
immediately following a node namedlorem
"?Idem for
(lorem)+[ipsum]
, does that look for a node named+
with type(lorem)
and a propertyipsum
? Or does this look for nodes withipsum
property directly following nodes with type(lorem)
?The grammar lists types of accessors that are not described anywhere else in the document:
"values(" q-ws* ")" | "props(" q-ws* ")"
. How are these supposed to behave?There's one other thing that purely comes down to confusion on my end, but with
>
,<
, and||
being valid identifiers, the following queries are all valid:>> >> >>
>>
that's a descendant of a node named>>
> > >
>
whose parent is also called>
|| || ||
||
or a node named||
[val() <<]
<
when sorting alphabeticallyIn my opinion it would make sense to disallow identifiers that are also operators in the query spec, just like the KDL spec itself doesn't allow identifiers that could cause confusion with any of the keywords or with numbers.
The text was updated successfully, but these errors were encountered: