Specification

Draft 2020-12

Specification https://json-schema.org/draft/2020-12/json-schema-core.html
Published16 June 2022
Authors
Austin Wright
Henry Andrews
Ben Hutton
Greg Dennis
Metaschemahttps://json-schema.org/draft/2020-12/schema

Introduction

The JSON Schema Draft 2020-12 is a comprehensive update to the previous draft 2019-09, addressing feedback and implementation experiences. This draft introduces features to simplify creating and validating JSON schemas.

Here's an overview of updates to Draft 2020-12;

  • Redesigned Array and Tuple Keywords: The items and additionalItems keywords have been replaced by prefixItems and items.
  • Dynamic References: The introduction of $dynamicRef and $dynamicAnchor replaces the older $recursiveRef and $recursiveAnchor.
  • Contains and UnevaluatedItems: Specifies how the contains keyword affects the unevaluatedItems keyword.
  • Regular Expressions: Now expected to support Unicode characters, addressing inconsistencies in previous drafts.
  • Media Type Changes: Drops the schema media type parameter.
  • Embedded Schemas and Bundling: Provides guidance on bundling schemas into a Compound Schema Document.
  • Vocabulary Changes: Separates the format vocabulary into format-annotation and format-assertion.

Draft 2020-12 Documents

Obsolete Draft 2020-12 Documents

These were updated without changing functionality or meta-schemas due to a few errors and unclear sections.

Release Notes

Need Help?

Did you find these docs helpful?

Help us make our docs great!

At JSON Schema, we value docs contributions as much as every other type of contribution!

Still Need Help?

Learning JSON Schema is often confusing, but don't worry, we are here to help!.