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