|
1 | 1 | {
|
2 | 2 | "$schema": "http://json-schema.org/draft-06/schema#",
|
3 | 3 | "$id": "http://json-schema.org/draft-06/schema#",
|
| 4 | + "$vocabularies": [ |
| 5 | + "http://json-schema.org/draft-06/schema#" |
| 6 | + ], |
4 | 7 | "title": "Core schema meta-schema",
|
5 | 8 | "definitions": {
|
6 | 9 | "schemaArray": {
|
7 | 10 | "type": "array",
|
8 | 11 | "minItems": 1,
|
9 |
| - "items": { "$ref": "#" } |
| 12 | + "items": { "$ref": "#/definitions/subschema" } |
10 | 13 | },
|
11 | 14 | "nonNegativeInteger": {
|
12 | 15 | "type": "integer",
|
|
34 | 37 | "items": { "type": "string" },
|
35 | 38 | "uniqueItems": true,
|
36 | 39 | "default": []
|
| 40 | + }, |
| 41 | + "subschema": { |
| 42 | + "allOf": [ |
| 43 | + { "$ref": "#" }, |
| 44 | + { "properties": { "$schema": false } } |
| 45 | + ] |
37 | 46 | }
|
38 | 47 | },
|
39 | 48 | "type": ["object", "boolean"],
|
|
46 | 55 | "type": "string",
|
47 | 56 | "format": "uri"
|
48 | 57 | },
|
| 58 | + "$vocabularies": { |
| 59 | + "type": "array", |
| 60 | + "items": { |
| 61 | + "type": "string", |
| 62 | + "format": "uri" |
| 63 | + } |
| 64 | + }, |
49 | 65 | "$ref": {
|
50 | 66 | "type": "string",
|
51 | 67 | "format": "uri-reference"
|
|
90 | 106 | "type": "string",
|
91 | 107 | "format": "regex"
|
92 | 108 | },
|
93 |
| - "additionalItems": { "$ref": "#" }, |
| 109 | + "additionalItems": { "$ref": "#/definitions/subschema" }, |
94 | 110 | "items": {
|
95 | 111 | "anyOf": [
|
96 |
| - { "$ref": "#" }, |
| 112 | + { "$ref": "#/definitions/subschema" }, |
97 | 113 | { "$ref": "#/definitions/schemaArray" }
|
98 | 114 | ],
|
99 | 115 | "default": {}
|
|
104 | 120 | "type": "boolean",
|
105 | 121 | "default": false
|
106 | 122 | },
|
107 |
| - "contains": { "$ref": "#" }, |
| 123 | + "contains": { "$ref": "#/definitions/subschema" }, |
108 | 124 | "maxProperties": { "$ref": "#/definitions/nonNegativeInteger" },
|
109 | 125 | "minProperties": { "$ref": "#/definitions/nonNegativeIntegerDefault0" },
|
110 | 126 | "required": { "$ref": "#/definitions/stringArray" },
|
111 |
| - "additionalProperties": { "$ref": "#" }, |
| 127 | + "additionalProperties": { "$ref": "#/definitions/subschema" }, |
112 | 128 | "definitions": {
|
113 | 129 | "type": "object",
|
114 |
| - "additionalProperties": { "$ref": "#" }, |
| 130 | + "additionalProperties": { "$ref": "#/definitions/subschema" }, |
115 | 131 | "default": {}
|
116 | 132 | },
|
117 | 133 | "properties": {
|
118 | 134 | "type": "object",
|
119 |
| - "additionalProperties": { "$ref": "#" }, |
| 135 | + "additionalProperties": { "$ref": "#/definitions/subschema" }, |
120 | 136 | "default": {}
|
121 | 137 | },
|
122 | 138 | "patternProperties": {
|
123 | 139 | "type": "object",
|
124 |
| - "additionalProperties": { "$ref": "#" }, |
| 140 | + "additionalProperties": { "$ref": "#/definitions/subschema" }, |
125 | 141 | "propertyNames": { "format": "regex" },
|
126 | 142 | "default": {}
|
127 | 143 | },
|
128 | 144 | "dependencies": {
|
129 | 145 | "type": "object",
|
130 | 146 | "additionalProperties": {
|
131 | 147 | "anyOf": [
|
132 |
| - { "$ref": "#" }, |
| 148 | + { "$ref": "#/definitions/subschema" }, |
133 | 149 | { "$ref": "#/definitions/stringArray" }
|
134 | 150 | ]
|
135 | 151 | }
|
136 | 152 | },
|
137 |
| - "propertyNames": { "$ref": "#" }, |
| 153 | + "propertyNames": { "$ref": "#/definitions/subschema" }, |
138 | 154 | "const": {},
|
139 | 155 | "enum": {
|
140 | 156 | "type": "array",
|
|
155 | 171 | "format": { "type": "string" },
|
156 | 172 | "contentMediaType": { "type": "string" },
|
157 | 173 | "contentEncoding": { "type": "string" },
|
158 |
| - "if": {"$ref": "#"}, |
159 |
| - "then": {"$ref": "#"}, |
160 |
| - "else": {"$ref": "#"}, |
| 174 | + "if": {"$ref": "#/definitions/subschema"}, |
| 175 | + "then": {"$ref": "#/definitions/subschema"}, |
| 176 | + "else": {"$ref": "#/definitions/subschema"}, |
161 | 177 | "allOf": { "$ref": "#/definitions/schemaArray" },
|
162 | 178 | "anyOf": { "$ref": "#/definitions/schemaArray" },
|
163 | 179 | "oneOf": { "$ref": "#/definitions/schemaArray" },
|
164 |
| - "not": { "$ref": "#" } |
| 180 | + "not": { "$ref": "#/definitions/subschema" } |
165 | 181 | },
|
166 | 182 | "default": {}
|
167 | 183 | }
|
0 commit comments