Initial commit
[yaffs-website] / node_modules / ajv / lib / refs / json-schema-v5.json
1 {
2     "id": "https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json#",
3     "$schema": "http://json-schema.org/draft-04/schema#",
4     "description": "Core schema meta-schema (v5 proposals)",
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         "$data": {
28             "type": "object",
29             "required": [ "$data" ],
30             "properties": {
31                 "$data": {
32                     "type": "string",
33                     "anyOf": [
34                         { "format": "relative-json-pointer" }, 
35                         { "format": "json-pointer" }
36                     ]
37                 }
38             },
39             "additionalProperties": false
40         }
41     },
42     "type": "object",
43     "properties": {
44         "id": {
45             "type": "string",
46             "format": "uri"
47         },
48         "$schema": {
49             "type": "string",
50             "format": "uri"
51         },
52         "title": {
53             "type": "string"
54         },
55         "description": {
56             "type": "string"
57         },
58         "default": {},
59         "multipleOf": {
60             "anyOf": [
61                 {
62                     "type": "number",
63                     "minimum": 0,
64                     "exclusiveMinimum": true
65                 },
66                 { "$ref": "#/definitions/$data" }
67             ]
68         },
69         "maximum": {
70             "anyOf": [
71                 { "type": "number" },
72                 { "$ref": "#/definitions/$data" }
73             ]
74         },
75         "exclusiveMaximum": {
76             "anyOf": [
77                 {
78                     "type": "boolean",
79                     "default": false
80                 },
81                 { "$ref": "#/definitions/$data" }
82             ]
83         },
84         "minimum": {
85             "anyOf": [
86                 { "type": "number" },
87                 { "$ref": "#/definitions/$data" }
88             ]
89         },
90         "exclusiveMinimum": {
91             "anyOf": [
92                 {
93                     "type": "boolean",
94                     "default": false
95                 },
96                 { "$ref": "#/definitions/$data" }
97             ]
98         },
99         "maxLength": {
100             "anyOf": [
101                 { "$ref": "#/definitions/positiveInteger" },
102                 { "$ref": "#/definitions/$data" }
103             ]
104         },
105         "minLength": {
106             "anyOf": [
107                 { "$ref": "#/definitions/positiveIntegerDefault0" },
108                 { "$ref": "#/definitions/$data" }
109             ]
110         },
111         "pattern": {
112             "anyOf": [
113                 {
114                     "type": "string",
115                     "format": "regex"
116                 },
117                 { "$ref": "#/definitions/$data" }
118             ]
119         },
120         "additionalItems": {
121             "anyOf": [
122                 { "type": "boolean" },
123                 { "$ref": "#" },
124                 { "$ref": "#/definitions/$data" }
125             ],
126             "default": {}
127         },
128         "items": {
129             "anyOf": [
130                 { "$ref": "#" },
131                 { "$ref": "#/definitions/schemaArray" }
132             ],
133             "default": {}
134         },
135         "maxItems": {
136             "anyOf": [
137                 { "$ref": "#/definitions/positiveInteger" },
138                 { "$ref": "#/definitions/$data" }
139             ]
140         },
141         "minItems": {
142             "anyOf": [
143                 { "$ref": "#/definitions/positiveIntegerDefault0" },
144                 { "$ref": "#/definitions/$data" }
145             ]
146         },
147         "uniqueItems": {
148             "anyOf": [
149                 {
150                     "type": "boolean",
151                     "default": false
152                 },
153                 { "$ref": "#/definitions/$data" }
154             ]
155         },
156         "maxProperties": {
157             "anyOf": [
158                 { "$ref": "#/definitions/positiveInteger" },
159                 { "$ref": "#/definitions/$data" }
160             ]
161         },
162         "minProperties": {
163             "anyOf": [
164                 { "$ref": "#/definitions/positiveIntegerDefault0" },
165                 { "$ref": "#/definitions/$data" }
166             ]
167         },
168         "required": {
169             "anyOf": [
170                 { "$ref": "#/definitions/stringArray" },
171                 { "$ref": "#/definitions/$data" }
172             ]
173         },
174         "additionalProperties": {
175             "anyOf": [
176                 { "type": "boolean" },
177                 { "$ref": "#" },
178                 { "$ref": "#/definitions/$data" }
179             ],
180             "default": {}
181         },
182         "definitions": {
183             "type": "object",
184             "additionalProperties": { "$ref": "#" },
185             "default": {}
186         },
187         "properties": {
188             "type": "object",
189             "additionalProperties": { "$ref": "#" },
190             "default": {}
191         },
192         "patternProperties": {
193             "type": "object",
194             "additionalProperties": { "$ref": "#" },
195             "default": {}
196         },
197         "dependencies": {
198             "type": "object",
199             "additionalProperties": {
200                 "anyOf": [
201                     { "$ref": "#" },
202                     { "$ref": "#/definitions/stringArray" }
203                 ]
204             }
205         },
206         "enum": {
207             "anyOf": [
208                 {
209                     "type": "array",
210                     "minItems": 1,
211                     "uniqueItems": true
212                 },
213                 { "$ref": "#/definitions/$data" }
214             ]
215         },
216         "type": {
217             "anyOf": [
218                 { "$ref": "#/definitions/simpleTypes" },
219                 {
220                     "type": "array",
221                     "items": { "$ref": "#/definitions/simpleTypes" },
222                     "minItems": 1,
223                     "uniqueItems": true
224                 }
225             ]
226         },
227         "allOf": { "$ref": "#/definitions/schemaArray" },
228         "anyOf": { "$ref": "#/definitions/schemaArray" },
229         "oneOf": { "$ref": "#/definitions/schemaArray" },
230         "not": { "$ref": "#" },
231         "format": {
232             "anyOf": [
233                 { "type": "string" },
234                 { "$ref": "#/definitions/$data" }
235             ]
236         },
237         "formatMaximum": {
238             "anyOf": [
239                 { "type": "string" },
240                 { "$ref": "#/definitions/$data" }
241             ]
242         },
243         "formatMinimum": {
244             "anyOf": [
245                 { "type": "string" },
246                 { "$ref": "#/definitions/$data" }
247             ]
248         },
249         "formatExclusiveMaximum": {
250             "anyOf": [
251                 {
252                     "type": "boolean",
253                     "default": false
254                 },
255                 { "$ref": "#/definitions/$data" }
256             ]
257         },
258         "formatExclusiveMinimum": {
259             "anyOf": [
260                 {
261                     "type": "boolean",
262                     "default": false
263                 },
264                 { "$ref": "#/definitions/$data" }
265             ]
266         },
267         "constant": {
268             "anyOf": [
269                 {},
270                 { "$ref": "#/definitions/$data" }
271             ]
272         },
273         "contains": { "$ref": "#" },
274         "patternGroups": {
275             "type": "object",
276             "additionalProperties": {
277                 "type": "object",
278                 "required": [ "schema" ],
279                 "properties": {
280                     "maximum": {
281                         "anyOf": [
282                             { "$ref": "#/definitions/positiveInteger" },
283                             { "$ref": "#/definitions/$data" }
284                         ]
285                     },
286                     "minimum": {
287                         "anyOf": [
288                             { "$ref": "#/definitions/positiveIntegerDefault0" },
289                             { "$ref": "#/definitions/$data" }
290                         ]
291                     },
292                     "schema": { "$ref": "#" }
293                 },
294                 "additionalProperties": false
295             },
296             "default": {}
297         },
298         "switch": {
299             "type": "array",
300             "items": {
301                 "required": [ "then" ],
302                 "properties": {
303                     "if": { "$ref": "#" },
304                     "then": {
305                         "anyOf": [
306                             { "type": "boolean" },
307                             { "$ref": "#" }
308                         ]
309                     },
310                     "continue": { "type": "boolean" }
311                 },
312                 "additionalProperties": false,
313                 "dependencies": {
314                     "continue": [ "if" ]
315                 }
316             }
317         }
318     },
319     "dependencies": {
320         "exclusiveMaximum": [ "maximum" ],
321         "exclusiveMinimum": [ "minimum" ],
322         "formatMaximum": [ "format" ],
323         "formatMinimum": [ "format" ],
324         "formatExclusiveMaximum": [ "formatMaximum" ],
325         "formatExclusiveMinimum": [ "formatMinimum" ]
326     },
327     "default": {}
328 }