{
    "$schema": "http://json-schema.org/draft-07/schema",
    "title": "Resolution Rule",
    "description": "validation of resolution rules",
    "type": "object",
    "properties": {
        "align": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "group": {
                        "type": "string"
                    },
                    "includes": {
                        "type": "array"
                    },
                    "excludes": {
                        "type": "array"
                    },
                    "match": {
                        "type": "string"
                    },
                    "ruleSet": {
                        "type": "string"
                    },
                    "reason": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "date": {
                        "type": "string"
                    }
                },
                "required": [
                    "includes",
                    "excludes",
                    "reason",
                    "author",
                    "date",
                    "group"
                ],
                "additionalProperties": false
            },
            "_uniqueItems": true
        },
        "deny": {
            "type": "array"
        },
        "exclude": {
            "type": "array"
        },
        "reject": {
            "type": "array"
        },
        "replace": {
            "type": "array"
        },
        "substitute": {
            "type": "array"
        }
    },
    "required": [
        "align",
        "deny",
        "exclude",
        "reject",
        "replace",
        "substitute"
    ],
    "additionalProperties": false
}