This repository is for the development of an Internet Draft for JSONPath. The draft is currently a work in progress.
See the latest rendered version of the draft here.
Christoph Burgmer's JSONPath Comparison project publishes a comparison of many existing implementations of JSONPath, calculates a consensus on various features, and proposes at least one implementation which will inform the Internet Draft.
All official discussion is on the jsonpath@ietf.org mailing list. See the archive for previous posts.
Informal discussions happen in slack. If you would like to join in, here is an invitation.
See the draft for the copyright which is repeated in LICENSE.
The source of the Internet Draft is in XML and corresponding .txt
and .html
files are generated and checked in.
So that the HTML version can be viewed via github pages, it is copied to docs/index.html
.
See RFC 7991 for rfc XML syntax information.
The XML document was created from this template.
Install xml2rfc:
pip3 install xml2rfc --user
This will place the executable in ~/.local/bin
aex
is an ABNF extractor and bap
an ABNF syntax checker.
- Clone https://github.com/fenner/bap
- In the cloned directory execute
./configure
make
aex
andbap
binaries should now exist in the directory- Add them to your path
This will:
- re-generate the
.txt
and.html
files - check the ABNF syntax
- copy the HTML file for use by github pages:
xml2rfc ./draft-normington-jsonpath-latest.xml --text --html && aex draft-normington-jsonpath-latest.txt | bap -S path -q && cp draft-normington-jsonpath-latest.html docs/index.html
A script gen.sh is provided for convenience.
For ease of reading pull requests, push the PR branch to master
of your fork. For instance, if your
github username/organisation is xxx
, then rendered HTML will be available at:
https://xxx.github.io/internet-draft/