Unevaluated Vocabulary Official Included By Default
A mandatory vocabulary that defines keywords that apply subschemas to array items or object properties that have not been successfully evaluated against any dynamic-scope subschema of any adjacent keywords.
Dialect | 2020-12 |
---|---|
URI | https://json-schema.org/draft/2020-12/vocab/unevaluated |
Specification | https://json-schema.org/draft/2020-12/json-schema-core.html#section-11 |
Authors | |
Metaschema | https://json-schema.org/draft/2020-12/meta/unevaluated |
Also see |
Your metaschema is likely already declaring this vocabulary
This vocabulary is included by default when using the official metaschema of this dialect: https://json-schema.org/draft/2020-12/schema. Unless you are using a custom metaschema, there is nothing else you need to do.
To make use of this vocabulary, modify your metaschema to declare the use of this vocabulary using the $vocabulary keyword and evaluate its metaschema. If the vocabulary must be present for an implementation to proceed:
{
...
"$vocabulary": {
...
"https://json-schema.org/draft/2020-12/vocab/unevaluated": true
},
"allOf": [
{ "$ref": "https://json-schema.org/draft/2020-12/meta/unevaluated" }
]
}
Otherwise, if it is optional for implementations to understand this vocabulary to proceed:
{
...
"$vocabulary": {
...
"https://json-schema.org/draft/2020-12/vocab/unevaluated": false
},
"allOf": [
{ "$ref": "https://json-schema.org/draft/2020-12/meta/unevaluated" }
]
}
Keywords
Keyword | Kind | Instance | Summary |
---|---|---|---|
unevaluatedItems | Applicator Annotation | Array | Validates array elements that did not successfully validate against other standard array applicators. |
unevaluatedProperties | Applicator Annotation | Object | Validates object properties that did not successfully validate against other standard object applicators. |