The current version is 2020-12! The previous version was 2019-09.

Specification documents #

See also the release notes / change log (Work in progress).

The specification is split into two parts, Core and Validation. We also publish the Relative JSON Pointers spec although it’s not currently used by Core or Validation in any significant way.

JSON Schema Core defines the basic foundation of JSON Schema
JSON Schema Validation defines the validation keywords of JSON Schema
Relative JSON Pointers extends the JSON Pointer syntax for relative pointers

They are also available on the IETF main site:

Meta-schemas #

The meta-schemas are schemas against which other schemas can be validated.It is self-descriptive: the JSON Schema meta-schema validates itself.

The latest meta-schema is 2020-12. For an explanation of the change to date-based identifiers, see the Specification Links page.

If you are accessing these JSON document links from a web browser, you will need to save the file then open it as a JSON document. This is due to limitations with GitHub Pages.

General-purpose meta-schema #

Please note, additional vocabulary specific schema files are needed to fully construct and use the Core/Validation Dialect meta-schema.

Core/Validation Dialect meta-schema Used for schemas written for pure validation.
Hyper-Schema Dialect meta-schema Used for schemas written for validation (2020-12) and hyper-linking (2019-09).
Recommended Output meta-schema Recommended output structure of the application process.

Single-vocabulary meta-schemas #

These are relevant primarily to people who want to write their own meta-schemas that build on specific parts of the existing specification.

Output schemas and examples #

Migrating from older drafts #

The release notes discuss the changes impacting users and implementers:

Older drafts #

Please see Specification Links for older drafts and the latest unreleased version of the specification.