@jarenjs/refs 0.8.4 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +20 -2
- package/dist/types/index.d.ts +44 -0
- package/dist/types/index.import.no-lint.d.ts +417 -0
- package/dist/types/json-schema-2019-09/index.d.ts +370 -0
- package/dist/types/json-schema-2019-09/index.import.no-lint.d.ts +378 -0
- package/dist/types/json-schema-2020-12/index.d.ts +411 -0
- package/dist/types/json-schema-2020-12/index.import.no-lint.d.ts +421 -0
- package/package.json +32 -10
- package/src/data.json +13 -0
- package/src/index.import.no-lint.js +5 -0
- package/src/index.js +86 -0
- package/src/json-schema-2019-09/index.import.no-lint.js +17 -0
- package/src/json-schema-2019-09/index.js +12 -0
- package/src/json-schema-2019-09/meta/applicator.json +53 -0
- package/src/json-schema-2019-09/meta/content.json +17 -0
- package/src/json-schema-2019-09/meta/core.json +57 -0
- package/src/json-schema-2019-09/meta/format.json +14 -0
- package/src/json-schema-2019-09/meta/meta-data.json +37 -0
- package/src/json-schema-2019-09/meta/validation.json +90 -0
- package/src/json-schema-2019-09/schema.json +39 -0
- package/src/json-schema-2020-12/index.import.no-lint.js +21 -0
- package/src/json-schema-2020-12/index.js +16 -0
- package/src/json-schema-2020-12/meta/applicator.json +48 -0
- package/src/json-schema-2020-12/meta/content.json +17 -0
- package/src/json-schema-2020-12/meta/core.json +51 -0
- package/src/json-schema-2020-12/meta/format-annotation.json +14 -0
- package/src/json-schema-2020-12/meta/format-assertion.json +13 -0
- package/src/json-schema-2020-12/meta/meta-data.json +37 -0
- package/src/json-schema-2020-12/meta/unevaluated.json +15 -0
- package/src/json-schema-2020-12/meta/validation.json +90 -0
- package/src/json-schema-2020-12/schema.json +55 -0
- package/src/json-schema-draft-06.json +137 -0
- package/src/json-schema-draft-07.json +152 -0
- package/src/json-schema-secure.json +88 -0
- package/dist/index.js +0 -1054
- package/dist/index.js.map +0 -7
- package/dist/index.min.js +0 -2
- package/dist/index.min.js.map +0 -7
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2019-09/meta/core",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2019-09/vocab/core": true
|
|
6
|
+
},
|
|
7
|
+
"$recursiveAnchor": true,
|
|
8
|
+
|
|
9
|
+
"title": "Core vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"$id": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"format": "uri-reference",
|
|
15
|
+
"$comment": "Non-empty fragments not allowed.",
|
|
16
|
+
"pattern": "^[^#]*#?$"
|
|
17
|
+
},
|
|
18
|
+
"$schema": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"format": "uri"
|
|
21
|
+
},
|
|
22
|
+
"$anchor": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"pattern": "^[A-Za-z][-A-Za-z0-9.:_]*$"
|
|
25
|
+
},
|
|
26
|
+
"$ref": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"format": "uri-reference"
|
|
29
|
+
},
|
|
30
|
+
"$recursiveRef": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"format": "uri-reference"
|
|
33
|
+
},
|
|
34
|
+
"$recursiveAnchor": {
|
|
35
|
+
"type": "boolean",
|
|
36
|
+
"default": false
|
|
37
|
+
},
|
|
38
|
+
"$vocabulary": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"propertyNames": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"format": "uri"
|
|
43
|
+
},
|
|
44
|
+
"additionalProperties": {
|
|
45
|
+
"type": "boolean"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"$comment": {
|
|
49
|
+
"type": "string"
|
|
50
|
+
},
|
|
51
|
+
"$defs": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"additionalProperties": {"$recursiveRef": "#"},
|
|
54
|
+
"default": {}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2019-09/meta/format",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2019-09/vocab/format": true
|
|
6
|
+
},
|
|
7
|
+
"$recursiveAnchor": true,
|
|
8
|
+
|
|
9
|
+
"title": "Format vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"format": {"type": "string"}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2019-09/meta/meta-data",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2019-09/vocab/meta-data": true
|
|
6
|
+
},
|
|
7
|
+
"$recursiveAnchor": true,
|
|
8
|
+
|
|
9
|
+
"title": "Meta-data vocabulary meta-schema",
|
|
10
|
+
|
|
11
|
+
"type": ["object", "boolean"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"title": {
|
|
14
|
+
"type": "string"
|
|
15
|
+
},
|
|
16
|
+
"description": {
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"default": true,
|
|
20
|
+
"deprecated": {
|
|
21
|
+
"type": "boolean",
|
|
22
|
+
"default": false
|
|
23
|
+
},
|
|
24
|
+
"readOnly": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"default": false
|
|
27
|
+
},
|
|
28
|
+
"writeOnly": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"default": false
|
|
31
|
+
},
|
|
32
|
+
"examples": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"items": true
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2019-09/meta/validation",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2019-09/vocab/validation": true
|
|
6
|
+
},
|
|
7
|
+
"$recursiveAnchor": true,
|
|
8
|
+
|
|
9
|
+
"title": "Validation vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"multipleOf": {
|
|
13
|
+
"type": "number",
|
|
14
|
+
"exclusiveMinimum": 0
|
|
15
|
+
},
|
|
16
|
+
"maximum": {
|
|
17
|
+
"type": "number"
|
|
18
|
+
},
|
|
19
|
+
"exclusiveMaximum": {
|
|
20
|
+
"type": "number"
|
|
21
|
+
},
|
|
22
|
+
"minimum": {
|
|
23
|
+
"type": "number"
|
|
24
|
+
},
|
|
25
|
+
"exclusiveMinimum": {
|
|
26
|
+
"type": "number"
|
|
27
|
+
},
|
|
28
|
+
"maxLength": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
29
|
+
"minLength": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
30
|
+
"pattern": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"format": "regex"
|
|
33
|
+
},
|
|
34
|
+
"maxItems": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
35
|
+
"minItems": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
36
|
+
"uniqueItems": {
|
|
37
|
+
"type": "boolean",
|
|
38
|
+
"default": false
|
|
39
|
+
},
|
|
40
|
+
"maxContains": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
41
|
+
"minContains": {
|
|
42
|
+
"$ref": "#/$defs/nonNegativeInteger",
|
|
43
|
+
"default": 1
|
|
44
|
+
},
|
|
45
|
+
"maxProperties": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
46
|
+
"minProperties": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
47
|
+
"required": {"$ref": "#/$defs/stringArray"},
|
|
48
|
+
"dependentRequired": {
|
|
49
|
+
"type": "object",
|
|
50
|
+
"additionalProperties": {
|
|
51
|
+
"$ref": "#/$defs/stringArray"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"const": true,
|
|
55
|
+
"enum": {
|
|
56
|
+
"type": "array",
|
|
57
|
+
"items": true
|
|
58
|
+
},
|
|
59
|
+
"type": {
|
|
60
|
+
"anyOf": [
|
|
61
|
+
{"$ref": "#/$defs/simpleTypes"},
|
|
62
|
+
{
|
|
63
|
+
"type": "array",
|
|
64
|
+
"items": {"$ref": "#/$defs/simpleTypes"},
|
|
65
|
+
"minItems": 1,
|
|
66
|
+
"uniqueItems": true
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"$defs": {
|
|
72
|
+
"nonNegativeInteger": {
|
|
73
|
+
"type": "integer",
|
|
74
|
+
"minimum": 0
|
|
75
|
+
},
|
|
76
|
+
"nonNegativeIntegerDefault0": {
|
|
77
|
+
"$ref": "#/$defs/nonNegativeInteger",
|
|
78
|
+
"default": 0
|
|
79
|
+
},
|
|
80
|
+
"simpleTypes": {
|
|
81
|
+
"enum": ["array", "boolean", "integer", "null", "number", "object", "string"]
|
|
82
|
+
},
|
|
83
|
+
"stringArray": {
|
|
84
|
+
"type": "array",
|
|
85
|
+
"items": {"type": "string"},
|
|
86
|
+
"uniqueItems": true,
|
|
87
|
+
"default": []
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2019-09/schema",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2019-09/vocab/core": true,
|
|
6
|
+
"https://json-schema.org/draft/2019-09/vocab/applicator": true,
|
|
7
|
+
"https://json-schema.org/draft/2019-09/vocab/validation": true,
|
|
8
|
+
"https://json-schema.org/draft/2019-09/vocab/meta-data": true,
|
|
9
|
+
"https://json-schema.org/draft/2019-09/vocab/format": false,
|
|
10
|
+
"https://json-schema.org/draft/2019-09/vocab/content": true
|
|
11
|
+
},
|
|
12
|
+
"$recursiveAnchor": true,
|
|
13
|
+
|
|
14
|
+
"title": "Core and Validation specifications meta-schema",
|
|
15
|
+
"allOf": [
|
|
16
|
+
{"$ref": "meta/core"},
|
|
17
|
+
{"$ref": "meta/applicator"},
|
|
18
|
+
{"$ref": "meta/validation"},
|
|
19
|
+
{"$ref": "meta/meta-data"},
|
|
20
|
+
{"$ref": "meta/format"},
|
|
21
|
+
{"$ref": "meta/content"}
|
|
22
|
+
],
|
|
23
|
+
"type": ["object", "boolean"],
|
|
24
|
+
"properties": {
|
|
25
|
+
"definitions": {
|
|
26
|
+
"$comment": "While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.",
|
|
27
|
+
"type": "object",
|
|
28
|
+
"additionalProperties": {"$recursiveRef": "#"},
|
|
29
|
+
"default": {}
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"$comment": "\"dependencies\" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to \"dependentSchemas\" and \"dependentRequired\"",
|
|
33
|
+
"type": "object",
|
|
34
|
+
"additionalProperties": {
|
|
35
|
+
"anyOf": [{"$recursiveRef": "#"}, {"$ref": "meta/validation#/$defs/stringArray"}]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import metaSchema from './schema.json' with { type: 'json' };
|
|
2
|
+
import applicator from './meta/applicator.json' with { type: 'json' };
|
|
3
|
+
import unevaluated from './meta/unevaluated.json' with { type: 'json' };
|
|
4
|
+
import content from './meta/content.json' with { type: 'json' };
|
|
5
|
+
import core from './meta/core.json' with { type: 'json' };
|
|
6
|
+
import formatAnnotation from './meta/format-annotation.json' with { type: 'json' };
|
|
7
|
+
import formatAssertion from './meta/format-assertion.json' with { type: 'json' };
|
|
8
|
+
import metadata from './meta/meta-data.json' with { type: 'json' };
|
|
9
|
+
import validation from './meta/validation.json' with { type: 'json' };
|
|
10
|
+
|
|
11
|
+
export default {
|
|
12
|
+
metaSchema,
|
|
13
|
+
applicator,
|
|
14
|
+
unevaluated,
|
|
15
|
+
content,
|
|
16
|
+
core,
|
|
17
|
+
formatAnnotation,
|
|
18
|
+
formatAssertion,
|
|
19
|
+
metadata,
|
|
20
|
+
validation,
|
|
21
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
import draft from './index.import.no-lint.js';
|
|
3
|
+
|
|
4
|
+
const draft2020 = [
|
|
5
|
+
draft.metaSchema,
|
|
6
|
+
draft.applicator,
|
|
7
|
+
draft.unevaluated,
|
|
8
|
+
draft.content,
|
|
9
|
+
draft.core,
|
|
10
|
+
draft.formatAnnotation,
|
|
11
|
+
draft.formatAssertion,
|
|
12
|
+
draft.metadata,
|
|
13
|
+
draft.validation,
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
export default draft2020;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/applicator",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/applicator": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Applicator vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"prefixItems": {"$ref": "#/$defs/schemaArray"},
|
|
13
|
+
"items": {"$dynamicRef": "#meta"},
|
|
14
|
+
"contains": {"$dynamicRef": "#meta"},
|
|
15
|
+
"additionalProperties": {"$dynamicRef": "#meta"},
|
|
16
|
+
"properties": {
|
|
17
|
+
"type": "object",
|
|
18
|
+
"additionalProperties": {"$dynamicRef": "#meta"},
|
|
19
|
+
"default": {}
|
|
20
|
+
},
|
|
21
|
+
"patternProperties": {
|
|
22
|
+
"type": "object",
|
|
23
|
+
"additionalProperties": {"$dynamicRef": "#meta"},
|
|
24
|
+
"propertyNames": {"format": "regex"},
|
|
25
|
+
"default": {}
|
|
26
|
+
},
|
|
27
|
+
"dependentSchemas": {
|
|
28
|
+
"type": "object",
|
|
29
|
+
"additionalProperties": {"$dynamicRef": "#meta"},
|
|
30
|
+
"default": {}
|
|
31
|
+
},
|
|
32
|
+
"propertyNames": {"$dynamicRef": "#meta"},
|
|
33
|
+
"if": {"$dynamicRef": "#meta"},
|
|
34
|
+
"then": {"$dynamicRef": "#meta"},
|
|
35
|
+
"else": {"$dynamicRef": "#meta"},
|
|
36
|
+
"allOf": {"$ref": "#/$defs/schemaArray"},
|
|
37
|
+
"anyOf": {"$ref": "#/$defs/schemaArray"},
|
|
38
|
+
"oneOf": {"$ref": "#/$defs/schemaArray"},
|
|
39
|
+
"not": {"$dynamicRef": "#meta"}
|
|
40
|
+
},
|
|
41
|
+
"$defs": {
|
|
42
|
+
"schemaArray": {
|
|
43
|
+
"type": "array",
|
|
44
|
+
"minItems": 1,
|
|
45
|
+
"items": {"$dynamicRef": "#meta"}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/content",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/content": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Content vocabulary meta-schema",
|
|
10
|
+
|
|
11
|
+
"type": ["object", "boolean"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"contentEncoding": {"type": "string"},
|
|
14
|
+
"contentMediaType": {"type": "string"},
|
|
15
|
+
"contentSchema": {"$dynamicRef": "#meta"}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/core",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/core": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Core vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"$id": {
|
|
13
|
+
"$ref": "#/$defs/uriReferenceString",
|
|
14
|
+
"$comment": "Non-empty fragments not allowed.",
|
|
15
|
+
"pattern": "^[^#]*#?$"
|
|
16
|
+
},
|
|
17
|
+
"$schema": {"$ref": "#/$defs/uriString"},
|
|
18
|
+
"$ref": {"$ref": "#/$defs/uriReferenceString"},
|
|
19
|
+
"$anchor": {"$ref": "#/$defs/anchorString"},
|
|
20
|
+
"$dynamicRef": {"$ref": "#/$defs/uriReferenceString"},
|
|
21
|
+
"$dynamicAnchor": {"$ref": "#/$defs/anchorString"},
|
|
22
|
+
"$vocabulary": {
|
|
23
|
+
"type": "object",
|
|
24
|
+
"propertyNames": {"$ref": "#/$defs/uriString"},
|
|
25
|
+
"additionalProperties": {
|
|
26
|
+
"type": "boolean"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"$comment": {
|
|
30
|
+
"type": "string"
|
|
31
|
+
},
|
|
32
|
+
"$defs": {
|
|
33
|
+
"type": "object",
|
|
34
|
+
"additionalProperties": {"$dynamicRef": "#meta"}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"$defs": {
|
|
38
|
+
"anchorString": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"pattern": "^[A-Za-z_][-A-Za-z0-9._]*$"
|
|
41
|
+
},
|
|
42
|
+
"uriString": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"format": "uri"
|
|
45
|
+
},
|
|
46
|
+
"uriReferenceString": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"format": "uri-reference"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/format-annotation",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/format-annotation": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Format vocabulary meta-schema for annotation results",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"format": {"type": "string"}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/format-assertion",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/format-assertion": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
"title": "Format vocabulary meta-schema for annotation results",
|
|
9
|
+
"type": ["object", "boolean"],
|
|
10
|
+
"properties": {
|
|
11
|
+
"format": { "type": "string" }
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/meta-data",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/meta-data": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Meta-data vocabulary meta-schema",
|
|
10
|
+
|
|
11
|
+
"type": ["object", "boolean"],
|
|
12
|
+
"properties": {
|
|
13
|
+
"title": {
|
|
14
|
+
"type": "string"
|
|
15
|
+
},
|
|
16
|
+
"description": {
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"default": true,
|
|
20
|
+
"deprecated": {
|
|
21
|
+
"type": "boolean",
|
|
22
|
+
"default": false
|
|
23
|
+
},
|
|
24
|
+
"readOnly": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"default": false
|
|
27
|
+
},
|
|
28
|
+
"writeOnly": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"default": false
|
|
31
|
+
},
|
|
32
|
+
"examples": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"items": true
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/unevaluated",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/unevaluated": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Unevaluated applicator vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"unevaluatedItems": {"$dynamicRef": "#meta"},
|
|
13
|
+
"unevaluatedProperties": {"$dynamicRef": "#meta"}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/meta/validation",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/validation": true
|
|
6
|
+
},
|
|
7
|
+
"$dynamicAnchor": "meta",
|
|
8
|
+
|
|
9
|
+
"title": "Validation vocabulary meta-schema",
|
|
10
|
+
"type": ["object", "boolean"],
|
|
11
|
+
"properties": {
|
|
12
|
+
"type": {
|
|
13
|
+
"anyOf": [
|
|
14
|
+
{"$ref": "#/$defs/simpleTypes"},
|
|
15
|
+
{
|
|
16
|
+
"type": "array",
|
|
17
|
+
"items": {"$ref": "#/$defs/simpleTypes"},
|
|
18
|
+
"minItems": 1,
|
|
19
|
+
"uniqueItems": true
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
"const": true,
|
|
24
|
+
"enum": {
|
|
25
|
+
"type": "array",
|
|
26
|
+
"items": true
|
|
27
|
+
},
|
|
28
|
+
"multipleOf": {
|
|
29
|
+
"type": "number",
|
|
30
|
+
"exclusiveMinimum": 0
|
|
31
|
+
},
|
|
32
|
+
"maximum": {
|
|
33
|
+
"type": "number"
|
|
34
|
+
},
|
|
35
|
+
"exclusiveMaximum": {
|
|
36
|
+
"type": "number"
|
|
37
|
+
},
|
|
38
|
+
"minimum": {
|
|
39
|
+
"type": "number"
|
|
40
|
+
},
|
|
41
|
+
"exclusiveMinimum": {
|
|
42
|
+
"type": "number"
|
|
43
|
+
},
|
|
44
|
+
"maxLength": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
45
|
+
"minLength": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
46
|
+
"pattern": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"format": "regex"
|
|
49
|
+
},
|
|
50
|
+
"maxItems": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
51
|
+
"minItems": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
52
|
+
"uniqueItems": {
|
|
53
|
+
"type": "boolean",
|
|
54
|
+
"default": false
|
|
55
|
+
},
|
|
56
|
+
"maxContains": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
57
|
+
"minContains": {
|
|
58
|
+
"$ref": "#/$defs/nonNegativeInteger",
|
|
59
|
+
"default": 1
|
|
60
|
+
},
|
|
61
|
+
"maxProperties": {"$ref": "#/$defs/nonNegativeInteger"},
|
|
62
|
+
"minProperties": {"$ref": "#/$defs/nonNegativeIntegerDefault0"},
|
|
63
|
+
"required": {"$ref": "#/$defs/stringArray"},
|
|
64
|
+
"dependentRequired": {
|
|
65
|
+
"type": "object",
|
|
66
|
+
"additionalProperties": {
|
|
67
|
+
"$ref": "#/$defs/stringArray"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"$defs": {
|
|
72
|
+
"nonNegativeInteger": {
|
|
73
|
+
"type": "integer",
|
|
74
|
+
"minimum": 0
|
|
75
|
+
},
|
|
76
|
+
"nonNegativeIntegerDefault0": {
|
|
77
|
+
"$ref": "#/$defs/nonNegativeInteger",
|
|
78
|
+
"default": 0
|
|
79
|
+
},
|
|
80
|
+
"simpleTypes": {
|
|
81
|
+
"enum": ["array", "boolean", "integer", "null", "number", "object", "string"]
|
|
82
|
+
},
|
|
83
|
+
"stringArray": {
|
|
84
|
+
"type": "array",
|
|
85
|
+
"items": {"type": "string"},
|
|
86
|
+
"uniqueItems": true,
|
|
87
|
+
"default": []
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"$vocabulary": {
|
|
5
|
+
"https://json-schema.org/draft/2020-12/vocab/core": true,
|
|
6
|
+
"https://json-schema.org/draft/2020-12/vocab/applicator": true,
|
|
7
|
+
"https://json-schema.org/draft/2020-12/vocab/unevaluated": true,
|
|
8
|
+
"https://json-schema.org/draft/2020-12/vocab/validation": true,
|
|
9
|
+
"https://json-schema.org/draft/2020-12/vocab/meta-data": true,
|
|
10
|
+
"https://json-schema.org/draft/2020-12/vocab/format-annotation": true,
|
|
11
|
+
"https://json-schema.org/draft/2020-12/vocab/content": true
|
|
12
|
+
},
|
|
13
|
+
"$dynamicAnchor": "meta",
|
|
14
|
+
|
|
15
|
+
"title": "Core and Validation specifications meta-schema",
|
|
16
|
+
"allOf": [
|
|
17
|
+
{"$ref": "meta/core"},
|
|
18
|
+
{"$ref": "meta/applicator"},
|
|
19
|
+
{"$ref": "meta/unevaluated"},
|
|
20
|
+
{"$ref": "meta/validation"},
|
|
21
|
+
{"$ref": "meta/meta-data"},
|
|
22
|
+
{"$ref": "meta/format-annotation"},
|
|
23
|
+
{"$ref": "meta/content"}
|
|
24
|
+
],
|
|
25
|
+
"type": ["object", "boolean"],
|
|
26
|
+
"$comment": "This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",
|
|
27
|
+
"properties": {
|
|
28
|
+
"definitions": {
|
|
29
|
+
"$comment": "\"definitions\" has been replaced by \"$defs\".",
|
|
30
|
+
"type": "object",
|
|
31
|
+
"additionalProperties": {"$dynamicRef": "#meta"},
|
|
32
|
+
"deprecated": true,
|
|
33
|
+
"default": {}
|
|
34
|
+
},
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"$comment": "\"dependencies\" has been split and replaced by \"dependentSchemas\" and \"dependentRequired\" in order to serve their differing semantics.",
|
|
37
|
+
"type": "object",
|
|
38
|
+
"additionalProperties": {
|
|
39
|
+
"anyOf": [{"$dynamicRef": "#meta"}, {"$ref": "meta/validation#/$defs/stringArray"}]
|
|
40
|
+
},
|
|
41
|
+
"deprecated": true,
|
|
42
|
+
"default": {}
|
|
43
|
+
},
|
|
44
|
+
"$recursiveAnchor": {
|
|
45
|
+
"$comment": "\"$recursiveAnchor\" has been replaced by \"$dynamicAnchor\".",
|
|
46
|
+
"$ref": "meta/core#/$defs/anchorString",
|
|
47
|
+
"deprecated": true
|
|
48
|
+
},
|
|
49
|
+
"$recursiveRef": {
|
|
50
|
+
"$comment": "\"$recursiveRef\" has been replaced by \"$dynamicRef\".",
|
|
51
|
+
"$ref": "meta/core#/$defs/uriReferenceString",
|
|
52
|
+
"deprecated": true
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|