Skip to the content.

JSON Schema Support

This library currently supports schema specified using the following specification versions: draft-06, draft-07 and draft-2019-09.

Supported keywords are described below:

Core Vocabulary

Coverage for The JSON Schema Core Vocabulary.

Keyword Supported
$anchor No
$comment Yes
$defs Yes
$id Yes
$recursiveAnchor No
$recursiveRef No
$ref Yes
$schema Yes
$vocabulary No

A Vocabulary for Applying Subschemas

Coverage for A Vocabulary for Applying Subschemas.

Keyword Supported
additionalItems No
additionalProperties Yes
oneOf Yes
allOf Yes
anyOf Yes
contains Yes
dependentSchemas No
else No
if No
items Yes
not No
patternProperties No
properties Yes
propertyNames No
then No
unevaluatedItems No
unevaluatedProperties No

Validation Keywords for Any Instance Type

Coverage for Validation Keywords for Any Instance Type.

Keyword Supported
const Yes
enum Yes
type Yes

Validation Keywords for Numeric Instances

Coverage for Validation Keywords for Numeric Instances.

Keyword Supported
exclusiveMaximum Yes
exclusiveMinimum Yes
maximum Yes
minimum Yes
multipleOf Yes

Validation Keywords for Strings

Coverage for Validation Keywords for Strings.

Keyword Supported
maxLength Yes
minLength Yes
pattern Yes

Validation Keywords for Arrays

Coverage for Validation Keywords for Arrays.

Keyword Supported
maxContains Yes
maxItems Yes
minContains Yes
minItems Yes
uniqueItems Yes

Validation Keywords for Objects

Coverage for Validation Keywords for Objects.

Keyword Supported
dependentRequired No
maxProperties Yes
minProperties Yes
required Yes

Defined Formats

Coverage for Defined Formats.

Keyword Supported
date Yes
date-time Yes
duration Yes
email Yes
hostname Yes
idn-email Yes
idn-hostname Yes
ipv4 Yes
ipv6 Yes
iri Yes
iri-reference Yes
json-pointer Yes
regex Yes
relative-json-pointer Yes
time Yes
uri Yes
uri-reference Yes
uri-template Yes
uuid Yes

A Vocabulary for the Contents of String-Encoded Data

Coverage for A Vocabulary for the Contents of String-Encoded Data is 100%.

Keyword Supported
contentEncoding No
contentMediaType No
contentSchema No

A Vocabulary for Basic Meta-Data Annotations

Coverage for A Vocabulary for Basic Meta-Data Annotations.

Keyword Supported
default Yes
deprecated Yes
description Yes
examples Yes
readOnly Yes
title Yes
writeOnly Yes