# All Rules :information_source: The reported examples are tested by [`tests/all_rules.rs`](https://github.com/macisamuele/jsonschema-equivalent/blob/master/tests/all_rules.rs) | Desciption | JSON Schema | Optimised JSON Schema | |-|:-:|:-:| | A non schema passses untouched | `1` | `1` | | A boolean schema passes untouched (1) | `true` | `true` | | A boolean schema passes untouched (2) | `false` | `false` | | `minimum` keyword has no effect on schema with `type` array | `{"minimum": 1, "type": "array"}` | `{"type": "array"}` | | `minimum` keyword has no effect on schema with `type` boolean | `{"minimum": 1, "type": "boolean"}` | `{"type": "boolean"}` | | `minimum` keyword has no effect on schema with `type` null | `{"minimum": 1, "type": "null"}` | `{"type": "null"}` | | `minLength` keyword has no effect on schema with `type` integer | `{"minLength": 1, "type": "integer"}` | `{"type": "integer"}` | | `minLength` keyword has no effect on schema with `type` number | `{"minLength": 1, "type": "number"}` | `{"type": "number"}` | | `minimum` keyword has no effect on schema with `type` object | `{"minimum": 1, "type": "object"}` | `{"type": "object"}` | | `minimum` keyword has no effect on schema with `type` string | `{"minimum": 1, "type": "string"}` | `{"type": "string"}` | | `additionalProperties` keyword has no effect on `true` schema | `{"additionalProperties": true}` | `{}` | | `additionalProperties` keyword has no effect on empty schema | `{"additionalProperties": {}}` | `{}` | | `required` keyword has no effect on empty list | `{"required": []}` | `{}` | | `exclusiveMaximum` keyword lower than `exclusiveMinimum` keyword results into a `false` schema | `{"type": "number", "exclusiveMaximum": 1, "exclusiveMinimum": 2}` | `false` | | `maxItems` keyword lower than `minItems` keyword results into a `false` schema | `{"type": "array", "maxItems": 1, "minItems": 2}` | `false` | | `maxLength` keyword lower than `minLength` keyword results into a `false` schema | `{"type": "string", "maxLength": 1, "minLength": 2}` | `false` | | `maxProperties` keyword lower than `minProperties` keyword results into a `false` schema | `{"type": "object", "maxProperties": 1, "minProperties": 2}` | `false` | | `maximum` keyword lower than `minimum` keyword results into a `false` schema | `{"type": "number", "maximum": 1, "minimum": 2}` | `false` |