Skip to content

Commit fc0cbcc

Browse files
authored
Merge pull request #293 from pradeepsixer/compat_matrix
Compatibility matrix
2 parents c5033e9 + 47de83e commit fc0cbcc

File tree

1 file changed

+76
-0
lines changed

1 file changed

+76
-0
lines changed

doc/compatibility.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
2+
### Legend
3+
4+
Symbol | Meaning |
5+
:-----:|---------|
6+
🟢 | Fully implemented
7+
🟡 | Partially implemented
8+
🔴 | Not implemented
9+
🚫 | Not defined in Schema Version.
10+
11+
### Compatibility with JSON Schema versions
12+
13+
Validation Keyword/Schema | Draft 4 | Draft 6 | Draft 7 | Draft 2019-09 |
14+
---------------- |:--------------:|:-------: |:-------: |:-------------:|
15+
$ref | 🟢 | 🟢 | 🟢 | 🟢
16+
additionalProperties | 🟢 | 🟢 | 🟢 | 🟢
17+
additionalItems | 🟢 | 🟢 | 🟢 | 🟢
18+
allOf | 🟢 | 🟢 | 🟢 | 🟢
19+
anyOf | 🟢 | 🟢 | 🟢 | 🟢
20+
const | 🚫 | 🟢 | 🟢 | 🟢
21+
contains | 🚫 | 🟢 | 🟢 | 🟢
22+
contentEncoding | 🚫 | 🚫 | 🔴 | 🔴
23+
contentMediaType | 🚫 | 🚫 | 🔴 | 🔴
24+
dependencies | 🟢 | 🟢 |🟢 | 🟢
25+
enum | 🟢 | 🟢 | 🟢 | 🟢
26+
exclusiveMaximum (boolean) | 🟢 | 🚫 | 🚫 | 🚫
27+
exclusiveMaximum (numeric) | 🚫 | 🟢 | 🟢 | 🟢
28+
exclusiveMinimum (boolean) | 🟢 | 🚫 | 🚫 | 🚫
29+
exclusiveMinimum (numeric) | 🚫 | 🟢 | 🟢 | 🟢
30+
items | 🟢 | 🟢 | 🟢 | 🟢
31+
maximum | 🟢 | 🟢 | 🟢 | 🟢
32+
maxItems | 🟢 | 🟢 | 🟢 | 🟢
33+
maxLength | 🟢 | 🟢 | 🟢 | 🟢
34+
maxProperties | 🟢 | 🟢 | 🟢 | 🟢
35+
minimum | 🟢 | 🟢 | 🟢 | 🟢
36+
minItems | 🟢 | 🟢 | 🟢 | 🟢
37+
minLength | 🟢 | 🟢 | 🟢 | 🟢
38+
minProperties | 🟢 | 🟢 | 🟢 | 🟢
39+
multipleOf | 🟢 | 🟢 | 🟢 | 🟢
40+
not | 🟢 | 🟢 | 🟢 | 🟢
41+
oneOf | 🟢 | 🟢 | 🟢 | 🟢
42+
pattern | 🟢 | 🟢 | 🟢 | 🟢
43+
patternProperties | 🟢 | 🟢 | 🟢 | 🟢
44+
properties | 🟢 | 🟢 | 🟢 | 🟢
45+
propertyNames | 🚫 | 🔴 | 🔴 | 🔴
46+
required | 🟢 | 🟢 | 🟢 | 🟢
47+
type | 🟢 | 🟢 | 🟢 | 🟢
48+
uniqueItems | 🟢 | 🟢 | 🟢 | 🟢
49+
50+
### Semantic Validation (Format)
51+
52+
Format | Draft 4 | Draft 6 | Draft 7 | Draft 2019-09 |
53+
-------|---------|---------|---------|---------------|
54+
date |🚫 | 🚫 | 🟢 | 🟢
55+
date-time | 🟢 | 🟢 | 🟢 | 🟢
56+
duration | 🚫 | 🚫 | 🔴 | 🔴
57+
email | 🟢 | 🟢 | 🟢 | 🟢
58+
hostname | 🟢 | 🟢 | 🟢 | 🟢
59+
idn-email | 🚫 | 🚫 | 🔴 | 🔴
60+
idn-hostname | 🚫 | 🚫 | 🔴 | 🔴
61+
ipv4 | 🟢 | 🟢 | 🟢 | 🟢
62+
ipv6 | 🟢 | 🟢 | 🟢 | 🟢
63+
iri | 🚫 | 🚫 | 🔴 | 🔴
64+
iri-reference | 🚫 | 🚫 | 🔴 | 🔴
65+
json-pointer | 🚫 | 🔴 | 🔴 | 🔴
66+
relative-json-pointer | 🚫 | 🔴 | 🔴 | 🔴
67+
regex | 🚫 | 🚫 | 🔴 | 🔴
68+
time | 🚫 | 🚫 | 🟢 | 🟢
69+
uri | 🟢 | 🟢 | 🟢 | 🟢
70+
uri-reference | 🚫 | 🔴 | 🔴 | 🔴
71+
uri-template | 🚫 | 🔴 | 🔴 | 🔴
72+
uuid | 🚫 | 🚫 | 🟢 | 🟢
73+
74+
### Footnotes
75+
1. Note that the validation are only optional for some of the keywords/formats.
76+
2. Refer to the corresponding JSON schema for more information on whether the keyword/format is optional or not.

0 commit comments

Comments
 (0)