json-schema-draft-06.json
1 { 2 "$schema": "http://json-schema.org/draft-06/schema#", 3 "$id": "http://json-schema.org/draft-06/schema#", 4 "title": "Core schema meta-schema", 5 "definitions": { 6 "schemaArray": { 7 "type": "array", 8 "minItems": 1, 9 "items": {"$ref": "#"} 10 }, 11 "nonNegativeInteger": { 12 "type": "integer", 13 "minimum": 0 14 }, 15 "nonNegativeIntegerDefault0": { 16 "allOf": [{"$ref": "#/definitions/nonNegativeInteger"}, {"default": 0}] 17 }, 18 "simpleTypes": { 19 "enum": ["array", "boolean", "integer", "null", "number", "object", "string"] 20 }, 21 "stringArray": { 22 "type": "array", 23 "items": {"type": "string"}, 24 "uniqueItems": true, 25 "default": [] 26 } 27 }, 28 "type": ["object", "boolean"], 29 "properties": { 30 "$id": { 31 "type": "string", 32 "format": "uri-reference" 33 }, 34 "$schema": { 35 "type": "string", 36 "format": "uri" 37 }, 38 "$ref": { 39 "type": "string", 40 "format": "uri-reference" 41 }, 42 "title": { 43 "type": "string" 44 }, 45 "description": { 46 "type": "string" 47 }, 48 "default": {}, 49 "examples": { 50 "type": "array", 51 "items": {} 52 }, 53 "multipleOf": { 54 "type": "number", 55 "exclusiveMinimum": 0 56 }, 57 "maximum": { 58 "type": "number" 59 }, 60 "exclusiveMaximum": { 61 "type": "number" 62 }, 63 "minimum": { 64 "type": "number" 65 }, 66 "exclusiveMinimum": { 67 "type": "number" 68 }, 69 "maxLength": {"$ref": "#/definitions/nonNegativeInteger"}, 70 "minLength": {"$ref": "#/definitions/nonNegativeIntegerDefault0"}, 71 "pattern": { 72 "type": "string", 73 "format": "regex" 74 }, 75 "additionalItems": {"$ref": "#"}, 76 "items": { 77 "anyOf": [{"$ref": "#"}, {"$ref": "#/definitions/schemaArray"}], 78 "default": {} 79 }, 80 "maxItems": {"$ref": "#/definitions/nonNegativeInteger"}, 81 "minItems": {"$ref": "#/definitions/nonNegativeIntegerDefault0"}, 82 "uniqueItems": { 83 "type": "boolean", 84 "default": false 85 }, 86 "contains": {"$ref": "#"}, 87 "maxProperties": {"$ref": "#/definitions/nonNegativeInteger"}, 88 "minProperties": {"$ref": "#/definitions/nonNegativeIntegerDefault0"}, 89 "required": {"$ref": "#/definitions/stringArray"}, 90 "additionalProperties": {"$ref": "#"}, 91 "definitions": { 92 "type": "object", 93 "additionalProperties": {"$ref": "#"}, 94 "default": {} 95 }, 96 "properties": { 97 "type": "object", 98 "additionalProperties": {"$ref": "#"}, 99 "default": {} 100 }, 101 "patternProperties": { 102 "type": "object", 103 "additionalProperties": {"$ref": "#"}, 104 "default": {} 105 }, 106 "dependencies": { 107 "type": "object", 108 "additionalProperties": { 109 "anyOf": [{"$ref": "#"}, {"$ref": "#/definitions/stringArray"}] 110 } 111 }, 112 "propertyNames": {"$ref": "#"}, 113 "const": {}, 114 "enum": { 115 "type": "array", 116 "minItems": 1, 117 "uniqueItems": true 118 }, 119 "type": { 120 "anyOf": [ 121 {"$ref": "#/definitions/simpleTypes"}, 122 { 123 "type": "array", 124 "items": {"$ref": "#/definitions/simpleTypes"}, 125 "minItems": 1, 126 "uniqueItems": true 127 } 128 ] 129 }, 130 "format": {"type": "string"}, 131 "allOf": {"$ref": "#/definitions/schemaArray"}, 132 "anyOf": {"$ref": "#/definitions/schemaArray"}, 133 "oneOf": {"$ref": "#/definitions/schemaArray"}, 134 "not": {"$ref": "#"} 135 }, 136 "default": {} 137 }