Other implementations WIP
Just to keep track of what's already half way implemented, but not merged yet:
- [x] PHP_remorhaz-jsonpath See PR, #6
- [x] Golang_github.com-bhmj-jsonslice Open question around correct API usage: https://github.com/bhmj/jsonslice/issues/5
- [ ] ~~Golang_github.com-yalp-jsonpath~~ ~~Seems to drag down the consensus a lot due to many features missing~~
- [x] Perl_JSON-Path Indeterministic output, #4
- [x] Bash_JSONPath.sh Does not work cross platform (OS X has issues, see https://github.com/mclarkson/JSONPath.sh/issues/6)
- [ ] Postgres_jsonpath Not reliable and unclear whether a good fit as it SQL doesn't fully implement the JSONPath as set out by Goessner
- [x] Objective-C_SMJJSONPath Looking good, but differences between Ubuntu and OSX
- [ ] Swift_SwiftPath Currently Ubuntu in Docker seems to disagree for some queries, https://github.com/g-mark/SwiftPath/issues/15
- [x] Golang_github.com-spyzhov-ajson pending https://github.com/spyzhov/ajson/issues/16
I would disqualify Golang_github.com-yalp-jsonpath as its README states it is not suggested for production use.
It would be a nice feature to ignore implementation while calculating consensus, but evaluate it's work later (maybe show results in a different table or mark it's colunn somehow)
What you are implying though is that we can identify libraries not worthy contributing to the consensus though, right? I'm not sure how we could objectively define such a criteria.
I agree.
Might JSONata be added to the list? It looks to be quite robust and of interest for such comparisons...
I couldn't find good documentation on jsonata's query language - from a first limited glimpse there seems to be not much intentional overlap with JSONPath? If indeed they are fundamentally different, a comparison across the syntax deviations would be a much harder undertaking. I haven't looked into the SQL's standard of JSONPath yet much (see branch on Postgres), this sounds like a similar harder issue due to differences in the syntax.
Yeah, sorry, I had just taken a mental note that it had a very robust API, but I had forgotten it is quite different. I think these pages give some idea of the basics: http://docs.jsonata.org/simple and http://docs.jsonata.org/predicate . Very interesting re: SQL implementing its own JSONPath...