-
Notifications
You must be signed in to change notification settings - Fork 12
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
RFC: RMLTC0010a-JSON & RMLTC0010b-JSON & RMLTC0010c-JSON #14
Comments
Hi, Thanks for your suggestion! For example:
This can be illustrated by the Jayway JsonPath Evaluator:
So we don't think this is related to the RML test cases, but to the JSONPath |
Hi @DylanVanAssche, Agreed that JSONPath is not standardized, which leads to a bunch of compatibility problems. However, I'm confused. The examples you give are not indicative of the problem I tried to highlight. The problem has to do with the syntax for path segments containing spaces. If you fill in the example with input:
and path
You get errors for all but Goessner. I can't find any source pointing to this being valid syntax, so it seems to be an optimization. I use Jayway as well for CARML, and it gives an error I don't see any options in Jayway to work around this. Because you indicated that RMLMapper uses the jayway implementation I got curious how it can work there. I found https://github.com/RMLio/rmlmapper-java/blob/d574f063630fafbaffd5546136500e7558afd0f0/src/main/java/be/ugent/rml/records/JSONRecord.java#L39 Now, I can see doing this for convenience for users, but this is changing the way the expression language (or the underlying implementation) works IMO. If this is expected engine behavior, it should be documented somewhere. But I would be against making this expected behavior, because it requires an engine to change the expression language. That is a bad idea IMHO. So I propose to reopen this issue. |
RFC for:
In JSONPath the syntax for using a key containing spaces is
"['foo bar']"
. This test implies that a mapping author should use"foo bar"
instead, which changes the syntax rules of the JSONPath language. When you consider that references and templates can contain more complex expressions than just simple key references, this will also become problematic. IMO the mapping language should have no influence on the query expression language, especially not one that creates a divergence from the standard form of queries in that query expression language.Proposed:
The text was updated successfully, but these errors were encountered: