diff --git a/schemas/deprecated.json b/schemas/deprecated.json index 725679b..78033a3 100644 --- a/schemas/deprecated.json +++ b/schemas/deprecated.json @@ -9,8 +9,7 @@ "type": "object", "additionalProperties": { "type": "string" - }, - "required": true + } }, "replace": { "type": "object", @@ -19,6 +18,7 @@ } } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["old"] } } diff --git a/schemas/field.json b/schemas/field.json index d8d61a7..8f65885 100644 --- a/schemas/field.json +++ b/schemas/field.json @@ -22,15 +22,15 @@ "properties": { "key": { "description": "For documentation of a key", - "type": "string", - "required": true + "type": "string" }, "value": { "description": "For documentation of a tag (key and value)", "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["key"] }, { "type": "object", @@ -78,13 +78,11 @@ "url", "wikidata", "wikipedia" - ], - "required": true + ] }, "label": { "description": "English label for the field caption. A field can reference the label of another by using that field's identifier contained in brackets (e.g. {field}), in which case also the field's terms will be referenced from that field.", - "type": "string", - "required": true + "type": "string" }, "geometry": { "description": "If specified, only show the field for these kinds of geometry", @@ -176,11 +174,11 @@ "properties": { "key": { "description": "The key of the required tag", - "type": "string", - "required": true + "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["key"] }, { "$id": "requires-key-equals-value", @@ -188,16 +186,15 @@ "properties": { "key": { "description": "The key of the required tag", - "type": "string", - "required": true + "type": "string" }, "value": { "description": "The value that the tag must have. (alternative to 'valueNot')", - "type": "string", - "required": true + "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["key", "value"] }, { "$id": "requires-key-not-value", @@ -205,16 +202,15 @@ "properties": { "key": { "description": "The key of the required tag", - "type": "string", - "required": true + "type": "string" }, "valueNot": { "description": "The value that the tag cannot have. (alternative to 'value')", - "type": "string", - "required": true + "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["key", "valueNot"] }, { "$id": "requires-not-key", @@ -222,11 +218,11 @@ "properties": { "keyNot": { "description": "A key that must not be present", - "type": "string", - "required": true + "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["keyNot"] } ] }, @@ -281,6 +277,7 @@ } }, "additionalProperties": false, + "required": ["type", "label"], "anyOf": [ { "$id": "field-type-without-key-nor-keys", "properties": { "type": { "enum": ["restrictions"] } }, "allOf": [ { "not": { "required": ["key"] }}, diff --git a/schemas/preset.json b/schemas/preset.json index 6488d38..6b4889d 100644 --- a/schemas/preset.json +++ b/schemas/preset.json @@ -5,8 +5,7 @@ "properties": { "name": { "description": "The English name for the feature. A preset can reference the label of another by using that preset's identifier contained in brackets (e.g. {preset}), in which case also the preset's aliases and terms will also be referenced from that preset.", - "type": "string", - "required": true + "type": "string" }, "geometry": { "description": "Valid geometry types for the feature, in order of preference", @@ -16,16 +15,14 @@ "items": { "type": "string", "enum": ["point", "vertex", "line", "area", "relation"] - }, - "required": true + } }, "tags": { "description": "Tags that must be present for the preset to match", "type": "object", "additionalProperties": { "type": "string" - }, - "required": true + } }, "addTags": { "description": "Tags that are added when changing to the preset (default is the same value as 'tags')", @@ -93,15 +90,15 @@ "properties": { "key": { "description": "For documentation of a key", - "type": "string", - "required": true + "type": "string" }, "value": { "description": "For documentation of a tag (key and value)", "type": "string" } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["key"] }, "replacement": { "description": "The ID of a preset that is preferable to this one", @@ -129,5 +126,6 @@ "additionalProperties": false } }, - "additionalProperties": false + "additionalProperties": false, + "required": ["name", "geometry", "tags"] }