maximum : Number

maximum

Number

Validation succeeds if the numeric instance is less than or equal to the given number.

Value This keyword must be set to a number
Kind Assertion
Applies To Number
Base Dialect 2020-12
Changed In None
Introduced In Draft 1
Vocabulary Validation
Specification https://json-schema.org/draft/2020-12/json-schema-validation.html#section-6.2.2
Metaschema https://json-schema.org/draft/2020-12/meta/validation
Official Tests draft2020-12/maximum.json
Default None
Annotation None
Affected By None
Affects None
Also See

The maximum keyword restricts number instances to be less than or equal to the given number.

Remember that JSON Schema is a constraint-driven language. Therefore, non-number instances successfully validate against this keyword. If needed, make use of the type keyword to constraint the accepted type accordingly.

Examples

A schema that constrains number instances to be less than or equal to the positive integer 10 Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "maximum": 10
}
Valid A number value less than 10 is valid Instance
9.9
Valid An integer value less than 10 is valid Instance
9
Invalid A number value greater than 10 is invalid Instance
10.001
Invalid An integer value greater than 10 is invalid Instance
11
Valid The real representation of the integer value 10 is valid Instance
10.0
Valid The integer value 10 is valid Instance
10
Valid A non-number value is valid Instance
"100000"
A schema that constrains number instances to be less than or equal to the negative real number -2.1 Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "maximum": -2.1
}
Valid A number value less than -2.1 is valid Instance
-2.2
Valid An integer value less than -2.1 is valid Instance
-3
Invalid A number value greater than -2.1 is invalid Instance
-2.01
Invalid An integer value greater than -2.1 is invalid Instance
-2
Valid The real number value -2.1 is valid Instance
-2.1
Valid A non-number value is valid Instance
"100000"