What this repository is
This repository contains sample JSON Schemas for various JSON-based formats found around the web.
There are many such formats, and this repository contains schemas for whatever formats I happened to stumble upon.
Existing schemas in this repository
This repository contains schemas for the following:
- JSON-RPC 2.0 (link to specification);
- GeoJSON (link to specification);
- SMD (link to specification);
- JSON Patch (link to specification);
- Avro Schema 1.7.4 (link to specification);
- JSON Home (link to specification);
- JSON Stat (link to specification).
- Swagger 1.2 (link to specification).
Note: these schemas are probably not perfect. See below.
How these schemas are written and tested
I use my toy site to check both the validity of the schema syntax, and the validation of data against these schemas.
This site uses my library, which I am fully confident about. But I am not that confident about the schemas themselves.
I have read the relevant specifications, but I certainly have missed some points in them, and as a result these schemas may not be accurate. Not to mention that some constraints expressed by these specifications are not enforceable by JSON Schema.
Requests and contributions
Both are welcome:
- if you stumble upon a JSON data format which you would like a JSON Schema for, feel free to open a feature request so that a schema be written for that format;
- if you spot an error on a schema (data which should validate but does not, or the opposite), you can provide sample data and the expected and actual results, using the site above; or you can submit a pull request to improve the schema itself;
- if, on the other hand, you have written a schema for an existing format, and wish to add it to this repository, you are welcome to open a pull request so that this schema be included in the examples. Provided that you are ready to comply to the...
The licensing conditions are the same as they are for JSON Schema itself: content in this repository may be licensed under either of the AFL or BSD license.