{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "#Incident",
    "description": "An operational or security incident. An event that negatively affects the confidentiality, integrity or availability of an organization's assets.",
    "type": "object",
    "allOf": [
        {
            "$ref": "#Entity"
        },
        {
            "properties": {
                "category": {
                    "description": "The category of the incident",
                    "type": "string",
                    "examples": [
                        "1. General Incident",
                        "2. Attack on Internal Facing Assets",
                        "3. Attack on External Facing Assets",
                        "4. Malware",
                        "5. Social Engineering",
                        "6. Data Breach",
                        "7. Physical or Environmental"
                    ]
                },
                "severity": {
                    "description": "Severity rating based on impact. Can be a string such as 'critical', 'major', 'minor', or an integer usually between 1-3.",
                    "type": "string"
                },
                "impacts": {
                    "description": "The target listing of [IDs/keys to] systems and resources this incident impacts.",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "reportable": {
                    "description": "Indicates if this is a reportable incident per applicable regulations, such as HIPAA, PCI, or GDPR.",
                    "type": "boolean",
                    "default": false
                },
                "reporter": {
                    "description": "The person/entity who reported this incident.",
                    "type": "string"
                },
                "postmortem": {
                    "description": "Summary and/or a link to the documented lesson learned.",
                    "type": "string"
                }
            },
            "required": ["category", "severity", "reportable"]
        }
    ]
}
