Regenerate all test expected outputs

Properties are now in a different order due to the preserve_order feature flag
This commit is contained in:
Graham Esau 2020-09-24 20:47:46 +01:00
parent 858543aca1
commit 5ddd44a9e5
28 changed files with 1452 additions and 1452 deletions

View file

@ -10,6 +10,18 @@
"weekday" "weekday"
], ],
"properties": { "properties": {
"weekday": {
"type": "string",
"enum": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
"Sun"
]
},
"date_time": { "date_time": {
"type": "string", "type": "string",
"format": "date-time" "format": "date-time"
@ -25,18 +37,6 @@
"naive_time": { "naive_time": {
"type": "string", "type": "string",
"format": "partial-date-time" "format": "partial-date-time"
},
"weekday": {
"type": "string",
"enum": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
"Sun"
]
} }
} }
} }

View file

@ -3,15 +3,15 @@
"title": "MyStruct", "title": "MyStruct",
"type": "object", "type": "object",
"properties": { "properties": {
"my_bool": {
"default": false,
"type": "boolean"
},
"my_int": { "my_int": {
"default": 0, "default": 0,
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
}, },
"my_bool": {
"default": false,
"type": "boolean"
},
"my_struct2": { "my_struct2": {
"default": "i:0 b:false", "default": "i:0 b:false",
"allOf": [ "allOf": [
@ -28,14 +28,14 @@
"MyStruct2": { "MyStruct2": {
"type": "object", "type": "object",
"properties": { "properties": {
"my_bool": {
"default": true,
"type": "boolean"
},
"my_int": { "my_int": {
"default": 6, "default": 6,
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"my_bool": {
"default": true,
"type": "boolean"
} }
} }
} }

View file

@ -24,13 +24,13 @@
"foo" "foo"
], ],
"properties": { "properties": {
"deprecated_field": {
"deprecated": true,
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"deprecated_field": {
"deprecated": true,
"type": "boolean"
} }
} }
} }

View file

@ -8,13 +8,13 @@
"foo" "foo"
], ],
"properties": { "properties": {
"deprecated_field": {
"deprecated": true,
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"deprecated_field": {
"deprecated": true,
"type": "boolean"
} }
} }
} }

View file

@ -22,15 +22,15 @@
"secs" "secs"
], ],
"properties": { "properties": {
"nanos": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"secs": { "secs": {
"type": "integer", "type": "integer",
"format": "uint64", "format": "uint64",
"minimum": 0.0 "minimum": 0.0
},
"nanos": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
} }
} }
}, },
@ -41,15 +41,15 @@
"secs_since_epoch" "secs_since_epoch"
], ],
"properties": { "properties": {
"nanos_since_epoch": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"secs_since_epoch": { "secs_since_epoch": {
"type": "integer", "type": "integer",
"format": "uint64", "format": "uint64",
"minimum": 0.0 "minimum": 0.0
},
"nanos_since_epoch": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
} }
} }
} }

View file

@ -23,17 +23,17 @@
"t" "t"
], ],
"properties": { "properties": {
"c": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"t": { "t": {
"type": "string", "type": "string",
"enum": [ "enum": [
"StringMap" "StringMap"
] ]
},
"c": {
"type": "object",
"additionalProperties": {
"type": "string"
}
} }
} }
}, },
@ -44,14 +44,14 @@
"t" "t"
], ],
"properties": { "properties": {
"c": {
"$ref": "#/definitions/UnitStruct"
},
"t": { "t": {
"type": "string", "type": "string",
"enum": [ "enum": [
"UnitStructNewType" "UnitStructNewType"
] ]
},
"c": {
"$ref": "#/definitions/UnitStruct"
} }
} }
}, },
@ -62,14 +62,14 @@
"t" "t"
], ],
"properties": { "properties": {
"c": {
"$ref": "#/definitions/Struct"
},
"t": { "t": {
"type": "string", "type": "string",
"enum": [ "enum": [
"StructNewType" "StructNewType"
] ]
},
"c": {
"$ref": "#/definitions/Struct"
} }
} }
}, },
@ -80,6 +80,12 @@
"t" "t"
], ],
"properties": { "properties": {
"t": {
"type": "string",
"enum": [
"Struct"
]
},
"c": { "c": {
"type": "object", "type": "object",
"required": [ "required": [
@ -87,20 +93,14 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
},
"t": {
"type": "string",
"enum": [
"Struct"
]
} }
} }
}, },
@ -111,6 +111,12 @@
"t" "t"
], ],
"properties": { "properties": {
"t": {
"type": "string",
"enum": [
"Tuple"
]
},
"c": { "c": {
"type": "array", "type": "array",
"items": [ "items": [
@ -124,12 +130,6 @@
], ],
"maxItems": 2, "maxItems": 2,
"minItems": 2 "minItems": 2
},
"t": {
"type": "string",
"enum": [
"Tuple"
]
} }
} }
}, },
@ -154,20 +154,23 @@
"t" "t"
], ],
"properties": { "properties": {
"c": {
"type": "integer",
"format": "int32"
},
"t": { "t": {
"type": "string", "type": "string",
"enum": [ "enum": [
"WithInt" "WithInt"
] ]
},
"c": {
"type": "integer",
"format": "int32"
} }
} }
} }
], ],
"definitions": { "definitions": {
"UnitStruct": {
"type": "null"
},
"Struct": { "Struct": {
"type": "object", "type": "object",
"required": [ "required": [
@ -175,17 +178,14 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
},
"UnitStruct": {
"type": "null"
} }
} }
} }

View file

@ -58,12 +58,12 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
} }
@ -105,6 +105,9 @@
} }
], ],
"definitions": { "definitions": {
"UnitStruct": {
"type": "null"
},
"Struct": { "Struct": {
"type": "object", "type": "object",
"required": [ "required": [
@ -112,17 +115,14 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
},
"UnitStruct": {
"type": "null"
} }
} }
} }

View file

@ -55,18 +55,18 @@
"typeProperty" "typeProperty"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": {
"type": "integer",
"format": "int32"
},
"typeProperty": { "typeProperty": {
"type": "string", "type": "string",
"enum": [ "enum": [
"StructNewType" "StructNewType"
] ]
},
"foo": {
"type": "integer",
"format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
}, },
@ -78,18 +78,18 @@
"typeProperty" "typeProperty"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": {
"type": "integer",
"format": "int32"
},
"typeProperty": { "typeProperty": {
"type": "string", "type": "string",
"enum": [ "enum": [
"Struct" "Struct"
] ]
},
"foo": {
"type": "integer",
"format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
}, },

View file

@ -24,12 +24,12 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
}, },
@ -53,6 +53,9 @@
} }
], ],
"definitions": { "definitions": {
"UnitStruct": {
"type": "null"
},
"Struct": { "Struct": {
"type": "object", "type": "object",
"required": [ "required": [
@ -60,17 +63,14 @@
"foo" "foo"
], ],
"properties": { "properties": {
"bar": {
"type": "boolean"
},
"foo": { "foo": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
},
"bar": {
"type": "boolean"
} }
} }
},
"UnitStruct": {
"type": "null"
} }
} }
} }

View file

@ -15,6 +15,14 @@
"foo" "foo"
], ],
"properties": { "properties": {
"foo": {
"examples": [
8,
null
],
"type": "integer",
"format": "int32"
},
"bar": { "bar": {
"type": "boolean" "type": "boolean"
}, },
@ -26,14 +34,6 @@
"string", "string",
"null" "null"
] ]
},
"foo": {
"examples": [
8,
null
],
"type": "integer",
"format": "int32"
} }
} }
} }

View file

@ -9,20 +9,20 @@
"v" "v"
], ],
"properties": { "properties": {
"b": {
"type": "boolean"
},
"f": { "f": {
"type": "number", "type": "number",
"format": "float" "format": "float"
}, },
"os": { "b": {
"default": "", "type": "boolean"
"type": "string"
}, },
"s": { "s": {
"type": "string" "type": "string"
}, },
"os": {
"default": "",
"type": "string"
},
"v": { "v": {
"type": "array", "type": "array",
"items": { "items": {

View file

@ -9,12 +9,10 @@
"unsigned" "unsigned"
], ],
"properties": { "properties": {
"nonzero_signed": { "unsigned": {
"type": "integer", "type": "integer",
"format": "int32", "format": "uint32",
"not": { "minimum": 0.0
"const": 0
}
}, },
"nonzero_unsigned": { "nonzero_unsigned": {
"type": "integer", "type": "integer",
@ -25,10 +23,12 @@
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
}, },
"unsigned": { "nonzero_signed": {
"type": "integer", "type": "integer",
"format": "uint32", "format": "int32",
"minimum": 0.0 "not": {
"const": 0
}
} }
} }
} }

View file

@ -7,10 +7,10 @@
"owned" "owned"
], ],
"properties": { "properties": {
"borrowed": { "owned": {
"$ref": "#/definitions/OsString" "$ref": "#/definitions/OsString"
}, },
"owned": { "borrowed": {
"$ref": "#/definitions/OsString" "$ref": "#/definitions/OsString"
} }
}, },

View file

@ -8,17 +8,53 @@
"range" "range"
], ],
"properties": { "properties": {
"bound": { "range": {
"$ref": "#/definitions/Bound_of_String" "$ref": "#/definitions/Range_of_uint"
}, },
"inclusive": { "inclusive": {
"$ref": "#/definitions/Range_of_double" "$ref": "#/definitions/Range_of_double"
}, },
"range": { "bound": {
"$ref": "#/definitions/Range_of_uint" "$ref": "#/definitions/Bound_of_String"
} }
}, },
"definitions": { "definitions": {
"Range_of_uint": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"start": {
"type": "integer",
"format": "uint",
"minimum": 0.0
},
"end": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
}
},
"Range_of_double": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"start": {
"type": "number",
"format": "double"
},
"end": {
"type": "number",
"format": "double"
}
}
},
"Bound_of_String": { "Bound_of_String": {
"oneOf": [ "oneOf": [
{ {
@ -48,42 +84,6 @@
"const": "Unbounded" "const": "Unbounded"
} }
] ]
},
"Range_of_double": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"type": "number",
"format": "double"
},
"start": {
"type": "number",
"format": "double"
}
}
},
"Range_of_uint": {
"type": "object",
"required": [
"end",
"start"
],
"properties": {
"end": {
"type": "integer",
"format": "uint",
"minimum": 0.0
},
"start": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
}
} }
} }
} }

View file

@ -10,13 +10,8 @@
"command_line": { "command_line": {
"type": "string" "type": "string"
}, },
"system_cpu_time": { "wall_time": {
"default": "0.000000000s", "$ref": "#/definitions/Duration"
"allOf": [
{
"$ref": "#/definitions/Duration"
}
]
}, },
"user_cpu_time": { "user_cpu_time": {
"default": { "default": {
@ -29,8 +24,13 @@
} }
] ]
}, },
"wall_time": { "system_cpu_time": {
"$ref": "#/definitions/Duration" "default": "0.000000000s",
"allOf": [
{
"$ref": "#/definitions/Duration"
}
]
} }
}, },
"definitions": { "definitions": {
@ -41,13 +41,13 @@
"secs" "secs"
], ],
"properties": { "properties": {
"nanos": {
"type": "integer",
"format": "int32"
},
"secs": { "secs": {
"type": "integer", "type": "integer",
"format": "int64" "format": "int64"
},
"nanos": {
"type": "integer",
"format": "int32"
} }
} }
} }

View file

@ -12,6 +12,12 @@
"byte_or_bool2": { "byte_or_bool2": {
"$ref": "#/definitions/Or_for_uint8_and_Boolean" "$ref": "#/definitions/Or_for_uint8_and_Boolean"
}, },
"unit_or_t2": {
"$ref": "#/definitions/Or_for_Null_and_int32"
},
"s": {
"$ref": "#/definitions/Str"
},
"fake_map": { "fake_map": {
"type": "object", "type": "object",
"additionalProperties": { "additionalProperties": {
@ -20,26 +26,9 @@
"type": "string" "type": "string"
} }
} }
},
"s": {
"$ref": "#/definitions/Str"
},
"unit_or_t2": {
"$ref": "#/definitions/Or_for_Null_and_int32"
} }
}, },
"definitions": { "definitions": {
"Or_for_Null_and_int32": {
"anyOf": [
{
"type": "null"
},
{
"type": "integer",
"format": "int32"
}
]
},
"Or_for_uint8_and_Boolean": { "Or_for_uint8_and_Boolean": {
"anyOf": [ "anyOf": [
{ {
@ -52,6 +41,17 @@
} }
] ]
}, },
"Or_for_Null_and_int32": {
"anyOf": [
{
"type": "null"
},
{
"type": "integer",
"format": "int32"
}
]
},
"Str": { "Str": {
"type": "string" "type": "string"
} }

View file

@ -15,6 +15,35 @@
} }
}, },
"definitions": { "definitions": {
"Result_of_MyStruct_or_Array_of_String": {
"oneOf": [
{
"type": "object",
"required": [
"Ok"
],
"properties": {
"Ok": {
"$ref": "#/definitions/MyStruct"
}
}
},
{
"type": "object",
"required": [
"Err"
],
"properties": {
"Err": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
]
},
"MyStruct": { "MyStruct": {
"type": "object", "type": "object",
"required": [ "required": [
@ -52,35 +81,6 @@
} }
} }
] ]
},
"Result_of_MyStruct_or_Array_of_String": {
"oneOf": [
{
"type": "object",
"required": [
"Ok"
],
"properties": {
"Ok": {
"$ref": "#/definitions/MyStruct"
}
}
},
{
"type": "object",
"required": [
"Err"
],
"properties": {
"Err": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
]
} }
} }
} }

File diff suppressed because it is too large Load diff

View file

@ -10,9 +10,6 @@
"w" "w"
], ],
"properties": { "properties": {
"inner": {
"$ref": "#/definitions/another-new-name"
},
"t": { "t": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
@ -28,6 +25,9 @@
"items": { "items": {
"type": "string" "type": "string"
} }
},
"inner": {
"$ref": "#/definitions/another-new-name"
} }
}, },
"definitions": { "definitions": {

View file

@ -10,9 +10,6 @@
"w" "w"
], ],
"properties": { "properties": {
"inner": {
"$ref": "#/definitions/MySimpleStruct"
},
"t": { "t": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
@ -28,6 +25,9 @@
"items": { "items": {
"type": "string" "type": "string"
} }
},
"inner": {
"$ref": "#/definitions/MySimpleStruct"
} }
}, },
"definitions": { "definitions": {

View file

@ -4,39 +4,83 @@
"description": "The root object of a JSON Schema document.", "description": "The root object of a JSON Schema document.",
"type": "object", "type": "object",
"properties": { "properties": {
"$id": { "$schema": {
"description": "The `$id` keyword.\n\nSee [JSON Schema 8.2.2. The \"$id\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.2).", "description": "The `$schema` keyword.\n\nSee [JSON Schema 8.1.1. The \"$schema\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.1.1).",
"type": "string", "type": "string",
"nullable": true "nullable": true
}, },
"definitions": {
"description": "The `definitions` keyword.\n\nIn JSON Schema draft 2019-09 this was replaced by $defs, but in Schemars this is still serialized as `definitions` for backward-compatibility.\n\nSee [JSON Schema 8.2.5. Schema Re-Use With \"$defs\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.5), and [JSON Schema (draft 07) 9. Schema Re-Use With \"definitions\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-01#section-9).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema"
}
},
"type": {
"description": "The `type` keyword.\n\nSee [JSON Schema Validation 6.1.1. \"type\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.1) and [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"allOf": [
{
"$ref": "#/components/schemas/SingleOrVec_for_InstanceType"
}
],
"nullable": true
},
"format": {
"description": "The `format` keyword.\n\nSee [JSON Schema Validation 7. A Vocabulary for Semantic Content With \"format\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-7).",
"type": "string",
"nullable": true
},
"enum": {
"description": "The `enum` keyword.\n\nSee [JSON Schema Validation 6.1.2. \"enum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.2)",
"type": "array",
"items": {},
"nullable": true
},
"const": {
"description": "The `const` keyword.\n\nSee [JSON Schema Validation 6.1.3. \"const\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.3)",
"nullable": true
},
"$ref": { "$ref": {
"description": "The `$ref` keyword.\n\nSee [JSON Schema 8.2.4.1. Direct References with \"$ref\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.4.1).", "description": "The `$ref` keyword.\n\nSee [JSON Schema 8.2.4.1. Direct References with \"$ref\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.4.1).",
"type": "string", "type": "string",
"nullable": true "nullable": true
}, },
"$schema": { "$id": {
"description": "The `$schema` keyword.\n\nSee [JSON Schema 8.1.1. The \"$schema\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.1.1).", "description": "The `$id` keyword.\n\nSee [JSON Schema 8.2.2. The \"$id\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.2).",
"type": "string", "type": "string",
"nullable": true "nullable": true
}, },
"additionalItems": { "title": {
"description": "The `additionalItems` keyword.\n\nSee [JSON Schema 9.3.1.2. \"additionalItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.2).", "description": "The `title` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"allOf": [ "type": "string",
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"additionalProperties": { "description": {
"description": "The `additionalProperties` keyword.\n\nSee [JSON Schema 9.3.2.3. \"additionalProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.3).", "description": "The `description` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"allOf": [ "type": "string",
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"default": {
"description": "The `default` keyword.\n\nSee [JSON Schema Validation 9.2. \"default\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.2).",
"nullable": true
},
"deprecated": {
"description": "The `deprecated` keyword.\n\nSee [JSON Schema Validation 9.3. \"deprecated\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.3).",
"type": "boolean"
},
"readOnly": {
"description": "The `readOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"writeOnly": {
"description": "The `writeOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"examples": {
"description": "The `examples` keyword.\n\nSee [JSON Schema Validation 9.5. \"examples\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.5).",
"type": "array",
"items": {}
},
"allOf": { "allOf": {
"description": "The `allOf` keyword.\n\nSee [JSON Schema 9.2.1.1. \"allOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.1).", "description": "The `allOf` keyword.\n\nSee [JSON Schema 9.2.1.1. \"allOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.1).",
"type": "array", "type": "array",
@ -53,41 +97,16 @@
}, },
"nullable": true "nullable": true
}, },
"const": { "oneOf": {
"description": "The `const` keyword.\n\nSee [JSON Schema Validation 6.1.3. \"const\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.3)", "description": "The `oneOf` keyword.\n\nSee [JSON Schema 9.2.1.3. \"oneOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.3).",
"nullable": true "type": "array",
}, "items": {
"contains": {
"description": "The `contains` keyword.\n\nSee [JSON Schema 9.3.1.4. \"contains\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.4).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"default": {
"description": "The `default` keyword.\n\nSee [JSON Schema Validation 9.2. \"default\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.2).",
"nullable": true
},
"definitions": {
"description": "The `definitions` keyword.\n\nIn JSON Schema draft 2019-09 this was replaced by $defs, but in Schemars this is still serialized as `definitions` for backward-compatibility.\n\nSee [JSON Schema 8.2.5. Schema Re-Use With \"$defs\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.5), and [JSON Schema (draft 07) 9. Schema Re-Use With \"definitions\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-01#section-9).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
} },
},
"deprecated": {
"description": "The `deprecated` keyword.\n\nSee [JSON Schema Validation 9.3. \"deprecated\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.3).",
"type": "boolean"
},
"description": {
"description": "The `description` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"type": "string",
"nullable": true "nullable": true
}, },
"else": { "not": {
"description": "The `else` keyword.\n\nSee [JSON Schema 9.2.2.3. \"else\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.3).", "description": "The `not` keyword.\n\nSee [JSON Schema 9.2.1.4. \"not\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.4).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
@ -95,34 +114,6 @@
], ],
"nullable": true "nullable": true
}, },
"enum": {
"description": "The `enum` keyword.\n\nSee [JSON Schema Validation 6.1.2. \"enum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.2)",
"type": "array",
"items": {},
"nullable": true
},
"examples": {
"description": "The `examples` keyword.\n\nSee [JSON Schema Validation 9.5. \"examples\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.5).",
"type": "array",
"items": {}
},
"exclusiveMaximum": {
"description": "The `exclusiveMaximum` keyword.\n\nSee [JSON Schema Validation 6.2.3. \"exclusiveMaximum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.3).",
"type": "number",
"format": "double",
"nullable": true
},
"exclusiveMinimum": {
"description": "The `exclusiveMinimum` keyword.\n\nSee [JSON Schema Validation 6.2.5. \"exclusiveMinimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.5).",
"type": "number",
"format": "double",
"nullable": true
},
"format": {
"description": "The `format` keyword.\n\nSee [JSON Schema Validation 7. A Vocabulary for Semantic Content With \"format\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-7).",
"type": "string",
"nullable": true
},
"if": { "if": {
"description": "The `if` keyword.\n\nSee [JSON Schema 9.2.2.1. \"if\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.1).", "description": "The `if` keyword.\n\nSee [JSON Schema 9.2.2.1. \"if\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.1).",
"allOf": [ "allOf": [
@ -132,34 +123,28 @@
], ],
"nullable": true "nullable": true
}, },
"items": { "then": {
"description": "The `items` keyword.\n\nSee [JSON Schema 9.3.1.1. \"items\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.1).", "description": "The `then` keyword.\n\nSee [JSON Schema 9.2.2.2. \"then\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.2).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/SingleOrVec_for_Schema" "$ref": "#/components/schemas/Schema"
} }
], ],
"nullable": true "nullable": true
}, },
"maxItems": { "else": {
"description": "The `maxItems` keyword.\n\nSee [JSON Schema Validation 6.4.1. \"maxItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.1).", "description": "The `else` keyword.\n\nSee [JSON Schema 9.2.2.3. \"else\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.3).",
"type": "integer", "allOf": [
"format": "uint32", {
"minimum": 0.0, "$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"maxLength": { "multipleOf": {
"description": "The `maxLength` keyword.\n\nSee [JSON Schema Validation 6.3.1. \"maxLength\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.1).", "description": "The `multipleOf` keyword.\n\nSee [JSON Schema Validation 6.2.1. \"multipleOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.1).",
"type": "integer", "type": "number",
"format": "uint32", "format": "double",
"minimum": 0.0,
"nullable": true
},
"maxProperties": {
"description": "The `maxProperties` keyword.\n\nSee [JSON Schema Validation 6.5.1. \"maxProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true "nullable": true
}, },
"maximum": { "maximum": {
@ -168,8 +153,26 @@
"format": "double", "format": "double",
"nullable": true "nullable": true
}, },
"minItems": { "exclusiveMaximum": {
"description": "The `minItems` keyword.\n\nSee [JSON Schema Validation 6.4.2. \"minItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.2).", "description": "The `exclusiveMaximum` keyword.\n\nSee [JSON Schema Validation 6.2.3. \"exclusiveMaximum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.3).",
"type": "number",
"format": "double",
"nullable": true
},
"minimum": {
"description": "The `minimum` keyword.\n\nSee [JSON Schema Validation 6.2.4. \"minimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.4).",
"type": "number",
"format": "double",
"nullable": true
},
"exclusiveMinimum": {
"description": "The `exclusiveMinimum` keyword.\n\nSee [JSON Schema Validation 6.2.5. \"exclusiveMinimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.5).",
"type": "number",
"format": "double",
"nullable": true
},
"maxLength": {
"description": "The `maxLength` keyword.\n\nSee [JSON Schema Validation 6.3.1. \"maxLength\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.1).",
"type": "integer", "type": "integer",
"format": "uint32", "format": "uint32",
"minimum": 0.0, "minimum": 0.0,
@ -182,27 +185,22 @@
"minimum": 0.0, "minimum": 0.0,
"nullable": true "nullable": true
}, },
"minProperties": { "pattern": {
"description": "The `minProperties` keyword.\n\nSee [JSON Schema Validation 6.5.2. \"minProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.2).", "description": "The `pattern` keyword.\n\nSee [JSON Schema Validation 6.3.3. \"pattern\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.3).",
"type": "integer", "type": "string",
"format": "uint32",
"minimum": 0.0,
"nullable": true "nullable": true
}, },
"minimum": { "items": {
"description": "The `minimum` keyword.\n\nSee [JSON Schema Validation 6.2.4. \"minimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.4).", "description": "The `items` keyword.\n\nSee [JSON Schema 9.3.1.1. \"items\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.1).",
"type": "number", "allOf": [
"format": "double", {
"$ref": "#/components/schemas/SingleOrVec_for_Schema"
}
],
"nullable": true "nullable": true
}, },
"multipleOf": { "additionalItems": {
"description": "The `multipleOf` keyword.\n\nSee [JSON Schema Validation 6.2.1. \"multipleOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.1).", "description": "The `additionalItems` keyword.\n\nSee [JSON Schema 9.3.1.2. \"additionalItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.2).",
"type": "number",
"format": "double",
"nullable": true
},
"not": {
"description": "The `not` keyword.\n\nSee [JSON Schema 9.2.1.4. \"not\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.4).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
@ -210,24 +208,53 @@
], ],
"nullable": true "nullable": true
}, },
"oneOf": { "maxItems": {
"description": "The `oneOf` keyword.\n\nSee [JSON Schema 9.2.1.3. \"oneOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.3).", "description": "The `maxItems` keyword.\n\nSee [JSON Schema Validation 6.4.1. \"maxItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"minItems": {
"description": "The `minItems` keyword.\n\nSee [JSON Schema Validation 6.4.2. \"minItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.2).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"uniqueItems": {
"description": "The `uniqueItems` keyword.\n\nSee [JSON Schema Validation 6.4.3. \"uniqueItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.3).",
"type": "boolean",
"nullable": true
},
"contains": {
"description": "The `contains` keyword.\n\nSee [JSON Schema 9.3.1.4. \"contains\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.4).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"maxProperties": {
"description": "The `maxProperties` keyword.\n\nSee [JSON Schema Validation 6.5.1. \"maxProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"minProperties": {
"description": "The `minProperties` keyword.\n\nSee [JSON Schema Validation 6.5.2. \"minProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.2).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"required": {
"description": "The `required` keyword.\n\nSee [JSON Schema Validation 6.5.3. \"required\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.3).",
"type": "array", "type": "array",
"items": { "items": {
"$ref": "#/components/schemas/Schema" "type": "string"
},
"nullable": true
},
"pattern": {
"description": "The `pattern` keyword.\n\nSee [JSON Schema Validation 6.3.3. \"pattern\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.3).",
"type": "string",
"nullable": true
},
"patternProperties": {
"description": "The `patternProperties` keyword.\n\nSee [JSON Schema 9.3.2.2. \"patternProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.2).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema"
} }
}, },
"properties": { "properties": {
@ -237,6 +264,22 @@
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
} }
}, },
"patternProperties": {
"description": "The `patternProperties` keyword.\n\nSee [JSON Schema 9.3.2.2. \"patternProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.2).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema"
}
},
"additionalProperties": {
"description": "The `additionalProperties` keyword.\n\nSee [JSON Schema 9.3.2.3. \"additionalProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.3).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"propertyNames": { "propertyNames": {
"description": "The `propertyNames` keyword.\n\nSee [JSON Schema 9.3.2.5. \"propertyNames\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.5).", "description": "The `propertyNames` keyword.\n\nSee [JSON Schema 9.3.2.5. \"propertyNames\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.5).",
"allOf": [ "allOf": [
@ -245,66 +288,10 @@
} }
], ],
"nullable": true "nullable": true
},
"readOnly": {
"description": "The `readOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"required": {
"description": "The `required` keyword.\n\nSee [JSON Schema Validation 6.5.3. \"required\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.3).",
"type": "array",
"items": {
"type": "string"
}
},
"then": {
"description": "The `then` keyword.\n\nSee [JSON Schema 9.2.2.2. \"then\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.2).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"title": {
"description": "The `title` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"type": "string",
"nullable": true
},
"type": {
"description": "The `type` keyword.\n\nSee [JSON Schema Validation 6.1.1. \"type\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.1) and [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"allOf": [
{
"$ref": "#/components/schemas/SingleOrVec_for_InstanceType"
}
],
"nullable": true
},
"uniqueItems": {
"description": "The `uniqueItems` keyword.\n\nSee [JSON Schema Validation 6.4.3. \"uniqueItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.3).",
"type": "boolean",
"nullable": true
},
"writeOnly": {
"description": "The `writeOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
} }
}, },
"additionalProperties": true, "additionalProperties": true,
"definitions": { "definitions": {
"InstanceType": {
"description": "The possible types of values in JSON Schema documents.\n\nSee [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"type": "string",
"enum": [
"null",
"boolean",
"object",
"array",
"number",
"string",
"integer"
]
},
"Schema": { "Schema": {
"description": "A JSON Schema.", "description": "A JSON Schema.",
"anyOf": [ "anyOf": [
@ -326,34 +313,71 @@
"description": "A JSON Schema object.", "description": "A JSON Schema object.",
"type": "object", "type": "object",
"properties": { "properties": {
"$id": { "type": {
"description": "The `$id` keyword.\n\nSee [JSON Schema 8.2.2. The \"$id\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.2).", "description": "The `type` keyword.\n\nSee [JSON Schema Validation 6.1.1. \"type\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.1) and [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"allOf": [
{
"$ref": "#/components/schemas/SingleOrVec_for_InstanceType"
}
],
"nullable": true
},
"format": {
"description": "The `format` keyword.\n\nSee [JSON Schema Validation 7. A Vocabulary for Semantic Content With \"format\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-7).",
"type": "string", "type": "string",
"nullable": true "nullable": true
}, },
"enum": {
"description": "The `enum` keyword.\n\nSee [JSON Schema Validation 6.1.2. \"enum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.2)",
"type": "array",
"items": {},
"nullable": true
},
"const": {
"description": "The `const` keyword.\n\nSee [JSON Schema Validation 6.1.3. \"const\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.3)",
"nullable": true
},
"$ref": { "$ref": {
"description": "The `$ref` keyword.\n\nSee [JSON Schema 8.2.4.1. Direct References with \"$ref\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.4.1).", "description": "The `$ref` keyword.\n\nSee [JSON Schema 8.2.4.1. Direct References with \"$ref\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.4.1).",
"type": "string", "type": "string",
"nullable": true "nullable": true
}, },
"additionalItems": { "$id": {
"description": "The `additionalItems` keyword.\n\nSee [JSON Schema 9.3.1.2. \"additionalItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.2).", "description": "The `$id` keyword.\n\nSee [JSON Schema 8.2.2. The \"$id\" Keyword](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-8.2.2).",
"allOf": [ "type": "string",
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"additionalProperties": { "title": {
"description": "The `additionalProperties` keyword.\n\nSee [JSON Schema 9.3.2.3. \"additionalProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.3).", "description": "The `title` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"allOf": [ "type": "string",
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"description": {
"description": "The `description` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"type": "string",
"nullable": true
},
"default": {
"description": "The `default` keyword.\n\nSee [JSON Schema Validation 9.2. \"default\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.2).",
"nullable": true
},
"deprecated": {
"description": "The `deprecated` keyword.\n\nSee [JSON Schema Validation 9.3. \"deprecated\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.3).",
"type": "boolean"
},
"readOnly": {
"description": "The `readOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"writeOnly": {
"description": "The `writeOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"examples": {
"description": "The `examples` keyword.\n\nSee [JSON Schema Validation 9.5. \"examples\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.5).",
"type": "array",
"items": {}
},
"allOf": { "allOf": {
"description": "The `allOf` keyword.\n\nSee [JSON Schema 9.2.1.1. \"allOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.1).", "description": "The `allOf` keyword.\n\nSee [JSON Schema 9.2.1.1. \"allOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.1).",
"type": "array", "type": "array",
@ -370,12 +394,16 @@
}, },
"nullable": true "nullable": true
}, },
"const": { "oneOf": {
"description": "The `const` keyword.\n\nSee [JSON Schema Validation 6.1.3. \"const\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.3)", "description": "The `oneOf` keyword.\n\nSee [JSON Schema 9.2.1.3. \"oneOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.3).",
"type": "array",
"items": {
"$ref": "#/components/schemas/Schema"
},
"nullable": true "nullable": true
}, },
"contains": { "not": {
"description": "The `contains` keyword.\n\nSee [JSON Schema 9.3.1.4. \"contains\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.4).", "description": "The `not` keyword.\n\nSee [JSON Schema 9.2.1.4. \"not\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.4).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
@ -383,56 +411,6 @@
], ],
"nullable": true "nullable": true
}, },
"default": {
"description": "The `default` keyword.\n\nSee [JSON Schema Validation 9.2. \"default\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.2).",
"nullable": true
},
"deprecated": {
"description": "The `deprecated` keyword.\n\nSee [JSON Schema Validation 9.3. \"deprecated\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.3).",
"type": "boolean"
},
"description": {
"description": "The `description` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"type": "string",
"nullable": true
},
"else": {
"description": "The `else` keyword.\n\nSee [JSON Schema 9.2.2.3. \"else\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.3).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"enum": {
"description": "The `enum` keyword.\n\nSee [JSON Schema Validation 6.1.2. \"enum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.2)",
"type": "array",
"items": {},
"nullable": true
},
"examples": {
"description": "The `examples` keyword.\n\nSee [JSON Schema Validation 9.5. \"examples\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.5).",
"type": "array",
"items": {}
},
"exclusiveMaximum": {
"description": "The `exclusiveMaximum` keyword.\n\nSee [JSON Schema Validation 6.2.3. \"exclusiveMaximum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.3).",
"type": "number",
"format": "double",
"nullable": true
},
"exclusiveMinimum": {
"description": "The `exclusiveMinimum` keyword.\n\nSee [JSON Schema Validation 6.2.5. \"exclusiveMinimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.5).",
"type": "number",
"format": "double",
"nullable": true
},
"format": {
"description": "The `format` keyword.\n\nSee [JSON Schema Validation 7. A Vocabulary for Semantic Content With \"format\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-7).",
"type": "string",
"nullable": true
},
"if": { "if": {
"description": "The `if` keyword.\n\nSee [JSON Schema 9.2.2.1. \"if\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.1).", "description": "The `if` keyword.\n\nSee [JSON Schema 9.2.2.1. \"if\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.1).",
"allOf": [ "allOf": [
@ -442,34 +420,28 @@
], ],
"nullable": true "nullable": true
}, },
"items": { "then": {
"description": "The `items` keyword.\n\nSee [JSON Schema 9.3.1.1. \"items\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.1).", "description": "The `then` keyword.\n\nSee [JSON Schema 9.2.2.2. \"then\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.2).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/SingleOrVec_for_Schema" "$ref": "#/components/schemas/Schema"
} }
], ],
"nullable": true "nullable": true
}, },
"maxItems": { "else": {
"description": "The `maxItems` keyword.\n\nSee [JSON Schema Validation 6.4.1. \"maxItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.1).", "description": "The `else` keyword.\n\nSee [JSON Schema 9.2.2.3. \"else\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.3).",
"type": "integer", "allOf": [
"format": "uint32", {
"minimum": 0.0, "$ref": "#/components/schemas/Schema"
}
],
"nullable": true "nullable": true
}, },
"maxLength": { "multipleOf": {
"description": "The `maxLength` keyword.\n\nSee [JSON Schema Validation 6.3.1. \"maxLength\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.1).", "description": "The `multipleOf` keyword.\n\nSee [JSON Schema Validation 6.2.1. \"multipleOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.1).",
"type": "integer", "type": "number",
"format": "uint32", "format": "double",
"minimum": 0.0,
"nullable": true
},
"maxProperties": {
"description": "The `maxProperties` keyword.\n\nSee [JSON Schema Validation 6.5.1. \"maxProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true "nullable": true
}, },
"maximum": { "maximum": {
@ -478,8 +450,26 @@
"format": "double", "format": "double",
"nullable": true "nullable": true
}, },
"minItems": { "exclusiveMaximum": {
"description": "The `minItems` keyword.\n\nSee [JSON Schema Validation 6.4.2. \"minItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.2).", "description": "The `exclusiveMaximum` keyword.\n\nSee [JSON Schema Validation 6.2.3. \"exclusiveMaximum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.3).",
"type": "number",
"format": "double",
"nullable": true
},
"minimum": {
"description": "The `minimum` keyword.\n\nSee [JSON Schema Validation 6.2.4. \"minimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.4).",
"type": "number",
"format": "double",
"nullable": true
},
"exclusiveMinimum": {
"description": "The `exclusiveMinimum` keyword.\n\nSee [JSON Schema Validation 6.2.5. \"exclusiveMinimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.5).",
"type": "number",
"format": "double",
"nullable": true
},
"maxLength": {
"description": "The `maxLength` keyword.\n\nSee [JSON Schema Validation 6.3.1. \"maxLength\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.1).",
"type": "integer", "type": "integer",
"format": "uint32", "format": "uint32",
"minimum": 0.0, "minimum": 0.0,
@ -492,27 +482,22 @@
"minimum": 0.0, "minimum": 0.0,
"nullable": true "nullable": true
}, },
"minProperties": { "pattern": {
"description": "The `minProperties` keyword.\n\nSee [JSON Schema Validation 6.5.2. \"minProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.2).", "description": "The `pattern` keyword.\n\nSee [JSON Schema Validation 6.3.3. \"pattern\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.3).",
"type": "integer", "type": "string",
"format": "uint32",
"minimum": 0.0,
"nullable": true "nullable": true
}, },
"minimum": { "items": {
"description": "The `minimum` keyword.\n\nSee [JSON Schema Validation 6.2.4. \"minimum\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.4).", "description": "The `items` keyword.\n\nSee [JSON Schema 9.3.1.1. \"items\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.1).",
"type": "number", "allOf": [
"format": "double", {
"$ref": "#/components/schemas/SingleOrVec_for_Schema"
}
],
"nullable": true "nullable": true
}, },
"multipleOf": { "additionalItems": {
"description": "The `multipleOf` keyword.\n\nSee [JSON Schema Validation 6.2.1. \"multipleOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.2.1).", "description": "The `additionalItems` keyword.\n\nSee [JSON Schema 9.3.1.2. \"additionalItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.2).",
"type": "number",
"format": "double",
"nullable": true
},
"not": {
"description": "The `not` keyword.\n\nSee [JSON Schema 9.2.1.4. \"not\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.4).",
"allOf": [ "allOf": [
{ {
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
@ -520,24 +505,53 @@
], ],
"nullable": true "nullable": true
}, },
"oneOf": { "maxItems": {
"description": "The `oneOf` keyword.\n\nSee [JSON Schema 9.2.1.3. \"oneOf\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.1.3).", "description": "The `maxItems` keyword.\n\nSee [JSON Schema Validation 6.4.1. \"maxItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"minItems": {
"description": "The `minItems` keyword.\n\nSee [JSON Schema Validation 6.4.2. \"minItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.2).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"uniqueItems": {
"description": "The `uniqueItems` keyword.\n\nSee [JSON Schema Validation 6.4.3. \"uniqueItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.3).",
"type": "boolean",
"nullable": true
},
"contains": {
"description": "The `contains` keyword.\n\nSee [JSON Schema 9.3.1.4. \"contains\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.1.4).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"maxProperties": {
"description": "The `maxProperties` keyword.\n\nSee [JSON Schema Validation 6.5.1. \"maxProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.1).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"minProperties": {
"description": "The `minProperties` keyword.\n\nSee [JSON Schema Validation 6.5.2. \"minProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.2).",
"type": "integer",
"format": "uint32",
"minimum": 0.0,
"nullable": true
},
"required": {
"description": "The `required` keyword.\n\nSee [JSON Schema Validation 6.5.3. \"required\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.3).",
"type": "array", "type": "array",
"items": { "items": {
"$ref": "#/components/schemas/Schema" "type": "string"
},
"nullable": true
},
"pattern": {
"description": "The `pattern` keyword.\n\nSee [JSON Schema Validation 6.3.3. \"pattern\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.3.3).",
"type": "string",
"nullable": true
},
"patternProperties": {
"description": "The `patternProperties` keyword.\n\nSee [JSON Schema 9.3.2.2. \"patternProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.2).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema"
} }
}, },
"properties": { "properties": {
@ -547,6 +561,22 @@
"$ref": "#/components/schemas/Schema" "$ref": "#/components/schemas/Schema"
} }
}, },
"patternProperties": {
"description": "The `patternProperties` keyword.\n\nSee [JSON Schema 9.3.2.2. \"patternProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.2).",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/Schema"
}
},
"additionalProperties": {
"description": "The `additionalProperties` keyword.\n\nSee [JSON Schema 9.3.2.3. \"additionalProperties\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.3).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"propertyNames": { "propertyNames": {
"description": "The `propertyNames` keyword.\n\nSee [JSON Schema 9.3.2.5. \"propertyNames\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.5).", "description": "The `propertyNames` keyword.\n\nSee [JSON Schema 9.3.2.5. \"propertyNames\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.3.2.5).",
"allOf": [ "allOf": [
@ -555,49 +585,6 @@
} }
], ],
"nullable": true "nullable": true
},
"readOnly": {
"description": "The `readOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
},
"required": {
"description": "The `required` keyword.\n\nSee [JSON Schema Validation 6.5.3. \"required\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.5.3).",
"type": "array",
"items": {
"type": "string"
}
},
"then": {
"description": "The `then` keyword.\n\nSee [JSON Schema 9.2.2.2. \"then\"](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-9.2.2.2).",
"allOf": [
{
"$ref": "#/components/schemas/Schema"
}
],
"nullable": true
},
"title": {
"description": "The `title` keyword.\n\nSee [JSON Schema Validation 9.1. \"title\" and \"description\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.1).",
"type": "string",
"nullable": true
},
"type": {
"description": "The `type` keyword.\n\nSee [JSON Schema Validation 6.1.1. \"type\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.1.1) and [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"allOf": [
{
"$ref": "#/components/schemas/SingleOrVec_for_InstanceType"
}
],
"nullable": true
},
"uniqueItems": {
"description": "The `uniqueItems` keyword.\n\nSee [JSON Schema Validation 6.4.3. \"uniqueItems\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-6.4.3).",
"type": "boolean",
"nullable": true
},
"writeOnly": {
"description": "The `writeOnly` keyword.\n\nSee [JSON Schema Validation 9.4. \"readOnly\" and \"writeOnly\"](https://tools.ietf.org/html/draft-handrews-json-schema-validation-02#section-9.4).",
"type": "boolean"
} }
}, },
"additionalProperties": true "additionalProperties": true
@ -616,6 +603,19 @@
} }
] ]
}, },
"InstanceType": {
"description": "The possible types of values in JSON Schema documents.\n\nSee [JSON Schema 4.2.1. Instance Data Model](https://tools.ietf.org/html/draft-handrews-json-schema-02#section-4.2.1).",
"type": "string",
"enum": [
"null",
"boolean",
"object",
"array",
"number",
"string",
"integer"
]
},
"SingleOrVec_for_Schema": { "SingleOrVec_for_Schema": {
"description": "A type which can be serialized as a single item, or multiple items.\n\nIn some contexts, a `Single` may be semantically distinct from a `Vec` containing only item.", "description": "A type which can be serialized as a single item, or multiple items.\n\nIn some contexts, a `Single` may be semantically distinct from a `Vec` containing only item.",
"anyOf": [ "anyOf": [

File diff suppressed because it is too large Load diff

View file

@ -9,6 +9,12 @@
"t" "t"
], ],
"properties": { "properties": {
"t": {
"type": "string",
"enum": [
"Struct"
]
},
"c": { "c": {
"type": "object", "type": "object",
"required": [ "required": [
@ -19,12 +25,6 @@
"type": "boolean" "type": "boolean"
} }
} }
},
"t": {
"type": "string",
"enum": [
"Struct"
]
} }
} }
}, },
@ -35,14 +35,14 @@
"t" "t"
], ],
"properties": { "properties": {
"c": {
"type": "boolean"
},
"t": { "t": {
"type": "string", "type": "string",
"enum": [ "enum": [
"NewType" "NewType"
] ]
},
"c": {
"type": "boolean"
} }
} }
}, },
@ -53,6 +53,12 @@
"t" "t"
], ],
"properties": { "properties": {
"t": {
"type": "string",
"enum": [
"Tuple"
]
},
"c": { "c": {
"type": "array", "type": "array",
"items": [ "items": [
@ -66,12 +72,6 @@
], ],
"maxItems": 2, "maxItems": 2,
"minItems": 2 "minItems": 2
},
"t": {
"type": "string",
"enum": [
"Tuple"
]
} }
} }
} }

View file

@ -9,14 +9,14 @@
"typeProperty" "typeProperty"
], ],
"properties": { "properties": {
"foo": {
"type": "boolean"
},
"typeProperty": { "typeProperty": {
"type": "string", "type": "string",
"enum": [ "enum": [
"Struct" "Struct"
] ]
},
"foo": {
"type": "boolean"
} }
} }
}, },

View file

@ -8,15 +8,15 @@
"foo" "foo"
], ],
"properties": { "properties": {
"foo": {
"type": "boolean"
},
"bar": { "bar": {
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
}, },
"baz": { "baz": {
"type": "boolean" "type": "boolean"
},
"foo": {
"type": "boolean"
} }
} }
} }

View file

@ -7,9 +7,6 @@
"writable" "writable"
], ],
"properties": { "properties": {
"included": {
"type": "null"
},
"readable": { "readable": {
"default": "", "default": "",
"readOnly": true, "readOnly": true,
@ -19,6 +16,9 @@
"writeOnly": true, "writeOnly": true,
"type": "number", "type": "number",
"format": "float" "format": "float"
},
"included": {
"type": "null"
} }
} }
} }

View file

@ -2,12 +2,15 @@
"$schema": "http://json-schema.org/draft-07/schema#", "$schema": "http://json-schema.org/draft-07/schema#",
"title": "Struct", "title": "Struct",
"type": "object", "type": "object",
"additionalProperties": false,
"required": [ "required": [
"bar", "bar",
"foo" "foo"
], ],
"properties": { "properties": {
"foo": {
"type": "integer",
"format": "int32"
},
"bar": { "bar": {
"type": "boolean" "type": "boolean"
}, },
@ -16,10 +19,7 @@
"string", "string",
"null" "null"
] ]
},
"foo": {
"type": "integer",
"format": "int32"
} }
} },
} "additionalProperties": false
}

View file

@ -7,6 +7,10 @@
"foo" "foo"
], ],
"properties": { "properties": {
"foo": {
"type": "integer",
"format": "int32"
},
"bar": { "bar": {
"type": "boolean" "type": "boolean"
}, },
@ -15,10 +19,6 @@
"string", "string",
"null" "null"
] ]
},
"foo": {
"type": "integer",
"format": "int32"
} }
} }
} }