169 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			169 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|     "$schema": "http://json-schema.org/draft-07/schema#",
 | |
|     "$id": "http://json-schema.org/draft-07/schema#",
 | |
|     "title": "Core schema meta-schema",
 | |
|     "definitions": {
 | |
|         "schemaArray": {
 | |
|             "type": "array",
 | |
|             "minItems": 1,
 | |
|             "items": { "$ref": "#" }
 | |
|         },
 | |
|         "nonNegativeInteger": {
 | |
|             "type": "integer",
 | |
|             "minimum": 0
 | |
|         },
 | |
|         "nonNegativeIntegerDefault0": {
 | |
|             "allOf": [
 | |
|                 { "$ref": "#/definitions/nonNegativeInteger" },
 | |
|                 { "default": 0 }
 | |
|             ]
 | |
|         },
 | |
|         "simpleTypes": {
 | |
|             "enum": [
 | |
|                 "array",
 | |
|                 "boolean",
 | |
|                 "integer",
 | |
|                 "null",
 | |
|                 "number",
 | |
|                 "object",
 | |
|                 "string"
 | |
|             ]
 | |
|         },
 | |
|         "stringArray": {
 | |
|             "type": "array",
 | |
|             "items": { "type": "string" },
 | |
|             "uniqueItems": true,
 | |
|             "default": []
 | |
|         }
 | |
|     },
 | |
|     "type": ["object", "boolean"],
 | |
|     "properties": {
 | |
|         "$id": {
 | |
|             "type": "string",
 | |
|             "format": "uri-reference"
 | |
|         },
 | |
|         "$schema": {
 | |
|             "type": "string",
 | |
|             "format": "uri"
 | |
|         },
 | |
|         "$ref": {
 | |
|             "type": "string",
 | |
|             "format": "uri-reference"
 | |
|         },
 | |
|         "$comment": {
 | |
|             "type": "string"
 | |
|         },
 | |
|         "title": {
 | |
|             "type": "string"
 | |
|         },
 | |
|         "description": {
 | |
|             "type": "string"
 | |
|         },
 | |
|         "default": true,
 | |
|         "readOnly": {
 | |
|             "type": "boolean",
 | |
|             "default": false
 | |
|         },
 | |
|         "examples": {
 | |
|             "type": "array",
 | |
|             "items": true
 | |
|         },
 | |
|         "multipleOf": {
 | |
|             "type": "number",
 | |
|             "exclusiveMinimum": 0
 | |
|         },
 | |
|         "maximum": {
 | |
|             "type": "number"
 | |
|         },
 | |
|         "exclusiveMaximum": {
 | |
|             "type": "number"
 | |
|         },
 | |
|         "minimum": {
 | |
|             "type": "number"
 | |
|         },
 | |
|         "exclusiveMinimum": {
 | |
|             "type": "number"
 | |
|         },
 | |
|         "maxLength": { "$ref": "#/definitions/nonNegativeInteger" },
 | |
|         "minLength": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },
 | |
|         "pattern": {
 | |
|             "type": "string",
 | |
|             "format": "regex"
 | |
|         },
 | |
|         "additionalItems": { "$ref": "#" },
 | |
|         "items": {
 | |
|             "anyOf": [
 | |
|                 { "$ref": "#" },
 | |
|                 { "$ref": "#/definitions/schemaArray" }
 | |
|             ],
 | |
|             "default": true
 | |
|         },
 | |
|         "maxItems": { "$ref": "#/definitions/nonNegativeInteger" },
 | |
|         "minItems": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },
 | |
|         "uniqueItems": {
 | |
|             "type": "boolean",
 | |
|             "default": false
 | |
|         },
 | |
|         "contains": { "$ref": "#" },
 | |
|         "maxProperties": { "$ref": "#/definitions/nonNegativeInteger" },
 | |
|         "minProperties": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },
 | |
|         "required": { "$ref": "#/definitions/stringArray" },
 | |
|         "additionalProperties": { "$ref": "#" },
 | |
|         "definitions": {
 | |
|             "type": "object",
 | |
|             "additionalProperties": { "$ref": "#" },
 | |
|             "default": {}
 | |
|         },
 | |
|         "properties": {
 | |
|             "type": "object",
 | |
|             "additionalProperties": { "$ref": "#" },
 | |
|             "default": {}
 | |
|         },
 | |
|         "patternProperties": {
 | |
|             "type": "object",
 | |
|             "additionalProperties": { "$ref": "#" },
 | |
|             "propertyNames": { "format": "regex" },
 | |
|             "default": {}
 | |
|         },
 | |
|         "dependencies": {
 | |
|             "type": "object",
 | |
|             "additionalProperties": {
 | |
|                 "anyOf": [
 | |
|                     { "$ref": "#" },
 | |
|                     { "$ref": "#/definitions/stringArray" }
 | |
|                 ]
 | |
|             }
 | |
|         },
 | |
|         "propertyNames": { "$ref": "#" },
 | |
|         "const": true,
 | |
|         "enum": {
 | |
|             "type": "array",
 | |
|             "items": true,
 | |
|             "minItems": 1,
 | |
|             "uniqueItems": true
 | |
|         },
 | |
|         "type": {
 | |
|             "anyOf": [
 | |
|                 { "$ref": "#/definitions/simpleTypes" },
 | |
|                 {
 | |
|                     "type": "array",
 | |
|                     "items": { "$ref": "#/definitions/simpleTypes" },
 | |
|                     "minItems": 1,
 | |
|                     "uniqueItems": true
 | |
|                 }
 | |
|             ]
 | |
|         },
 | |
|         "format": { "type": "string" },
 | |
|         "contentMediaType": { "type": "string" },
 | |
|         "contentEncoding": { "type": "string" },
 | |
|         "if": {"$ref": "#"},
 | |
|         "then": {"$ref": "#"},
 | |
|         "else": {"$ref": "#"},
 | |
|         "allOf": { "$ref": "#/definitions/schemaArray" },
 | |
|         "anyOf": { "$ref": "#/definitions/schemaArray" },
 | |
|         "oneOf": { "$ref": "#/definitions/schemaArray" },
 | |
|         "not": { "$ref": "#" }
 | |
|     },
 | |
|     "default": true
 | |
| }
 |