ohler55/ojg

Consider implementing JSONPath

Closed this issue · 9 comments

glyn commented

IETF RFC 9535 defines a proposed standard for JSONPath. Other resources:

  • A partial Compliance Test Suite.
  • Behaviours of various implementations can be checked in the comparison project. Please note that the JSONPath Reference Implementation referenced in the comparison project is stalled/archived and incomplete.
  • At the time of writing, online sandboxes for RFC 9535 are available in C# and in Rust.
  • For more background and comments on the status of the CTS and RI, see this this post (also here in the IETF blog).
  • Public discussion occurs in the IETF JSONPath Working Group's mailing list (archive).

(See here for updates to this list of resources.)

Valid approaches for this project are to (a) implement the RFC in whole or in part, (b) document its behaviour relative to the RFC, and (c) do nothing.

Why is this an issue? Have you looked at OjG at all or the jp package of OjG?

glyn commented

Why is this an issue? Have you looked at OjG at all or the jp package of OjG?

I'm afraid I haven't had time, sorry - the issue is just one of many I'm raising to notify implementers. If there is nothing to do or no intention to do anything, please feel free to close this issue.

It is really inappropriate to spam implementors forcing them to waste time simply due to your own laziness. We work hard to provide software that others find helpful. Please be more considerate in the future. If you are going to raise an issue make sure it is appropriate and don't make demands on how to respond with an a, b, or c choice.

glyn commented

My sincere apologies for wasting your time and thanks for helping me understand your perspective.

Thank you. I think you just a hit a nerve. OjG does in fact attempt to follow the RFC which is mentioned in the README.md file. I believe OjG is the most complete go implementation of JSONPath so far. I have commented on issue on the RFC github project and have a new issue or PR to bring up based on a choice I made in the JSONPath implementation in OjG.

glyn commented

Thanks. I'm currently bumping @gregsdennis's JsonPath.Net to v1.0.0 on the comparison project as that also implements the RFC. Then it will be fun to play "spot the difference" between that column and OjG's.

There are still some gray areas in the spec and a lot of details to get right. I'm sure there will be differences but hopefully the gaps are getting smaller.

glyn commented

Yes, hopefully. If you want to log any of the gray areas, it's probably easiest to drop an issue in the spec repo. (Although I've unsubscribed, others in the JSONPath Working Group haven't).

That is the plan. I should probably stop putting it off and submit the issue. BTW, I noticed the comparison by @cburgmer is out of date for OjG so I'll reach out and try to get that updated.