{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Outer", "type": "object", "properties": { "int": { "type": "integer", "format": "int32", "examples": [ 8, null ] }, "values": { "type": "object", "additionalProperties": true }, "value": true, "inner": { "anyOf": [ { "$ref": "#/definitions/Inner" }, { "type": "null" } ] }, "tuples": { "type": "array", "items": { "type": "array", "maxItems": 2, "minItems": 2, "items": [ { "type": "integer", "format": "uint8", "minimum": 0 }, { "type": "integer", "format": "int64" } ] } } }, "required": [ "int", "values", "value", "tuples" ], "definitions": { "Inner": { "oneOf": [ { "type": "string", "enum": [ "UndocumentedUnit1", "UndocumentedUnit2" ] }, { "description": "This is a documented unit variant", "type": "string", "const": "DocumentedUnit" }, { "type": "object", "properties": { "ValueNewType": true }, "required": [ "ValueNewType" ], "additionalProperties": false } ] } } }