{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
        "MyMap1": {
            "additionalProperties": {
                "$ref": "#/definitions/MyType"
            },
            "type": "object"
        },
        "MyMap2": {
            "additionalProperties": {
                "type": [
                    "string",
                    "number"
                ]
            },
            "description": "The additionalProperties annotation should be ignored",
            "type": "object"
        },
        "MyType": {
            "type": "object"
        }
    },
    "properties": {
        "map1": {
            "$ref": "#/definitions/MyMap1"
        },
        "map2": {
            "$ref": "#/definitions/MyMap2"
        },
        "map3": {
            "$ref": "#/definitions/MyMap2"
        }
    },
    "required": [
        "map1",
        "map2",
        "map3"
    ],
    "type": "object"
}