|
| 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