{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "additionalProperties": false,
    "description": "VERIS Community Schema 1.3",
    "properties": {
        "action": {
            "minProperties": 1,
            "properties": {
                "environmental": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Deterioration",
                                    "Earthquake",
                                    "EMI",
                                    "ESD",
                                    "Temperature",
                                    "Fire",
                                    "Flood",
                                    "Hazmat",
                                    "Humidity",
                                    "Hurricane",
                                    "Ice",
                                    "Landslide",
                                    "Lightning",
                                    "Meteorite",
                                    "Particulates",
                                    "Pathogen",
                                    "Power failure",
                                    "Tornado",
                                    "Tsunami",
                                    "Vermin",
                                    "Volcano",
                                    "Leak",
                                    "Wind",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "variety"
                    ],
                    "type": "object"
                },
                "error": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Classification error",
                                    "Data entry error",
                                    "Disposal error",
                                    "Gaffe",
                                    "Loss",
                                    "Maintenance error",
                                    "Misconfiguration",
                                    "Misdelivery",
                                    "Misinformation",
                                    "Omission",
                                    "Physical accidents",
                                    "Capacity shortage",
                                    "Programming error",
                                    "Publishing error",
                                    "Malfunction",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "Random error",
                                    "Carelessness",
                                    "Inadequate personnel",
                                    "Inadequate processes",
                                    "Inadequate technology",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "variety",
                        "vector"
                    ],
                    "type": "object"
                },
                "hacking": {
                    "additionalProperties": false,
                    "properties": {
                        "cve": {
                            "type": "string"
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Abuse of functionality",
                                    "Brute force",
                                    "Buffer overflow",
                                    "Cache poisoning",
                                    "Session prediction",
                                    "CSRF",
                                    "XSS",
                                    "Cryptanalysis",
                                    "DoS",
                                    "Footprinting",
                                    "Forced browsing",
                                    "Format string attack",
                                    "Fuzz testing",
                                    "HTTP request smuggling",
                                    "HTTP request splitting",
                                    "HTTP response smuggling",
                                    "HTTP Response Splitting",
                                    "Integer overflows",
                                    "LDAP injection",
                                    "Mail command injection",
                                    "MitM",
                                    "Null byte injection",
                                    "Offline cracking",
                                    "OS commanding",
                                    "Pass-the-hash",
                                    "Path traversal",
                                    "RFI",
                                    "Reverse engineering",
                                    "Routing detour",
                                    "Session fixation",
                                    "Session replay",
                                    "Soap array abuse",
                                    "Special element injection",
                                    "SQLi",
                                    "SSI injection",
                                    "URL redirector abuse",
                                    "Use of backdoor or C2",
                                    "Use of stolen creds",
                                    "XML attribute blowup",
                                    "XML entity expansion",
                                    "XML external entities",
                                    "XML injection",
                                    "XPath injection",
                                    "XQuery injection",
                                    "Virtual machine escape",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "3rd party desktop",
                                    "Backdoor or C2",
                                    "Desktop sharing",
                                    "Physical access",
                                    "Command shell",
                                    "Partner",
                                    "VPN",
                                    "Web application",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "vector",
                        "variety"
                    ],
                    "type": "object"
                },
                "malware": {
                    "additionalProperties": false,
                    "properties": {
                        "cve": {
                            "type": "string"
                        },
                        "name": {
                            "type": "string"
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Adware",
                                    "Backdoor",
                                    "Brute force",
                                    "Capture app data",
                                    "Capture stored data",
                                    "Client-side attack",
                                    "Click fraud",
                                    "C2",
                                    "Destroy data",
                                    "Disable controls",
                                    "DoS",
                                    "Downloader",
                                    "Exploit vuln",
                                    "Export data",
                                    "Packet sniffer",
                                    "Password dumper",
                                    "Ram scraper",
                                    "Ransomware",
                                    "Rootkit",
                                    "Scan network",
                                    "Spam",
                                    "Spyware/Keylogger",
                                    "SQL injection",
                                    "Adminware",
                                    "Worm",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "Direct install",
                                    "Download by malware",
                                    "Email autoexecute",
                                    "Email link",
                                    "Email attachment",
                                    "Instant messaging",
                                    "Network propagation",
                                    "Remote injection",
                                    "Removable media",
                                    "Software update",
                                    "Web drive-by",
                                    "Web download",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "vector",
                        "variety"
                    ],
                    "type": "object"
                },
                "misuse": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Knowledge abuse",
                                    "Privilege abuse",
                                    "Possession abuse",
                                    "Data mishandling",
                                    "Email misuse",
                                    "Net misuse",
                                    "Illicit content",
                                    "Unapproved workaround",
                                    "Unapproved hardware",
                                    "Unapproved software",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "Physical access",
                                    "LAN access",
                                    "Remote access",
                                    "Non-corporate",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "vector",
                        "variety"
                    ],
                    "type": "object"
                },
                "physical": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Assault",
                                    "Bypassed controls",
                                    "Destruction",
                                    "Disabled controls",
                                    "Skimmer",
                                    "Snooping",
                                    "Surveillance",
                                    "Tampering",
                                    "Theft",
                                    "Wiretapping",
                                    "Connection",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "Partner facility",
                                    "Partner vehicle",
                                    "Personal residence",
                                    "Personal vehicle",
                                    "Public facility",
                                    "Public vehicle",
                                    "Victim secure area",
                                    "Victim work area",
                                    "Victim public area",
                                    "Victim grounds",
                                    "Visitor privileges",
                                    "Uncontrolled location",
                                    "Privileged access",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "vector",
                        "variety"
                    ],
                    "type": "object"
                },
                "social": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "target": {
                            "items": {
                                "enum": [
                                    "Auditor",
                                    "Call center",
                                    "Cashier",
                                    "Customer",
                                    "End-user",
                                    "Executive",
                                    "Finance",
                                    "Former employee",
                                    "Helpdesk",
                                    "Human resources",
                                    "Maintenance",
                                    "Manager",
                                    "Partner",
                                    "Guard",
                                    "Developer",
                                    "System admin",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Baiting",
                                    "Bribery",
                                    "Elicitation",
                                    "Extortion",
                                    "Forgery",
                                    "Influence",
                                    "Scam",
                                    "Phishing",
                                    "Pretexting",
                                    "Propaganda",
                                    "Spam",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "vector": {
                            "items": {
                                "enum": [
                                    "Documents",
                                    "Email",
                                    "In-person",
                                    "IM",
                                    "Phone",
                                    "Removable media",
                                    "SMS",
                                    "Social media",
                                    "Software",
                                    "Website",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "vector",
                        "variety",
                        "target"
                    ],
                    "type": "object"
                },
                "unknown": {
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        }
                    },
                    "type": "object"
                }
            },
            "type": "object"
        },
        "actor": {
            "additionalProperties": false,
            "minProperties": 1,
            "properties": {
                "external": {
                    "additionalProperties": false,
                    "properties": {
                        "country": {
                            "items": {
                                "enum": [
                                    "AD",
                                    "AE",
                                    "AF",
                                    "AG",
                                    "AI",
                                    "AL",
                                    "AM",
                                    "AO",
                                    "AQ",
                                    "AR",
                                    "AS",
                                    "AT",
                                    "AU",
                                    "AW",
                                    "AX",
                                    "AZ",
                                    "BA",
                                    "BB",
                                    "BD",
                                    "BE",
                                    "BF",
                                    "BG",
                                    "BH",
                                    "BI",
                                    "BJ",
                                    "BL",
                                    "BM",
                                    "BN",
                                    "BO",
                                    "BQ",
                                    "BR",
                                    "BS",
                                    "BT",
                                    "BV",
                                    "BW",
                                    "BY",
                                    "BZ",
                                    "CA",
                                    "CC",
                                    "CD",
                                    "CF",
                                    "CG",
                                    "CH",
                                    "CI",
                                    "CK",
                                    "CL",
                                    "CM",
                                    "CN",
                                    "CO",
                                    "CR",
                                    "CU",
                                    "CV",
                                    "CW",
                                    "CX",
                                    "CY",
                                    "CZ",
                                    "DE",
                                    "DJ",
                                    "DK",
                                    "DM",
                                    "DO",
                                    "DZ",
                                    "EC",
                                    "EE",
                                    "EG",
                                    "EH",
                                    "ER",
                                    "ES",
                                    "ET",
                                    "FI",
                                    "FJ",
                                    "FK",
                                    "FM",
                                    "FO",
                                    "FR",
                                    "GA",
                                    "GB",
                                    "GD",
                                    "GE",
                                    "GF",
                                    "GG",
                                    "GH",
                                    "GI",
                                    "GL",
                                    "GM",
                                    "GN",
                                    "GP",
                                    "GQ",
                                    "GR",
                                    "GS",
                                    "GT",
                                    "GU",
                                    "GW",
                                    "GY",
                                    "HK",
                                    "HM",
                                    "HN",
                                    "HR",
                                    "HT",
                                    "HU",
                                    "ID",
                                    "IE",
                                    "IL",
                                    "IM",
                                    "IN",
                                    "IO",
                                    "IQ",
                                    "IR",
                                    "IS",
                                    "IT",
                                    "JE",
                                    "JM",
                                    "JO",
                                    "JP",
                                    "KE",
                                    "KG",
                                    "KH",
                                    "KI",
                                    "KM",
                                    "KN",
                                    "KP",
                                    "KR",
                                    "KW",
                                    "KY",
                                    "KZ",
                                    "LA",
                                    "LB",
                                    "LC",
                                    "LI",
                                    "LK",
                                    "LR",
                                    "LS",
                                    "LT",
                                    "LU",
                                    "LV",
                                    "LY",
                                    "MA",
                                    "MC",
                                    "MD",
                                    "ME",
                                    "MF",
                                    "MG",
                                    "MH",
                                    "MK",
                                    "ML",
                                    "MM",
                                    "MN",
                                    "MO",
                                    "MP",
                                    "MQ",
                                    "MR",
                                    "MS",
                                    "MT",
                                    "MU",
                                    "MV",
                                    "MW",
                                    "MX",
                                    "MY",
                                    "MZ",
                                    "NA",
                                    "NC",
                                    "NE",
                                    "NF",
                                    "NG",
                                    "NI",
                                    "NL",
                                    "NO",
                                    "NP",
                                    "NR",
                                    "NU",
                                    "NZ",
                                    "OM",
                                    "Other",
                                    "PA",
                                    "PE",
                                    "PF",
                                    "PG",
                                    "PH",
                                    "PK",
                                    "PL",
                                    "PM",
                                    "PN",
                                    "PR",
                                    "PS",
                                    "PT",
                                    "PW",
                                    "PY",
                                    "QA",
                                    "RE",
                                    "RO",
                                    "RS",
                                    "RU",
                                    "RW",
                                    "SA",
                                    "SB",
                                    "SC",
                                    "SD",
                                    "SE",
                                    "SG",
                                    "SH",
                                    "SI",
                                    "SJ",
                                    "SK",
                                    "SL",
                                    "SM",
                                    "SN",
                                    "SO",
                                    "SR",
                                    "SS",
                                    "ST",
                                    "SV",
                                    "SX",
                                    "SY",
                                    "SZ",
                                    "TC",
                                    "TD",
                                    "TF",
                                    "TG",
                                    "TH",
                                    "TJ",
                                    "TK",
                                    "TL",
                                    "TM",
                                    "TN",
                                    "TO",
                                    "TR",
                                    "TT",
                                    "TV",
                                    "TW",
                                    "TZ",
                                    "UA",
                                    "UG",
                                    "UM",
                                    "US",
                                    "UY",
                                    "UZ",
                                    "Unknown",
                                    "VA",
                                    "VC",
                                    "VE",
                                    "VG",
                                    "VI",
                                    "VN",
                                    "VU",
                                    "WF",
                                    "WS",
                                    "YE",
                                    "YT",
                                    "ZA",
                                    "ZM",
                                    "ZW"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "motive": {
                            "items": {
                                "enum": [
                                    "NA",
                                    "Espionage",
                                    "Fear",
                                    "Financial",
                                    "Fun",
                                    "Grudge",
                                    "Ideology",
                                    "Convenience",
                                    "Secondary",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "name": {
                            "items": {
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "region": {
                            "items": {
                                "maxLength": 6,
                                "minLength": 6,
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Activist",
                                    "Auditor",
                                    "Competitor",
                                    "Customer",
                                    "Force majeure",
                                    "Former employee",
                                    "Nation-state",
                                    "Organized crime",
                                    "Acquaintance",
                                    "State-affiliated",
                                    "Terrorist",
                                    "Unaffiliated",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "country",
                        "variety",
                        "motive"
                    ],
                    "type": "object"
                },
                "internal": {
                    "additionalProperties": false,
                    "properties": {
                        "job_change": {
                            "items": {
                                "enum": [
                                    "Hired",
                                    "Promoted",
                                    "Lateral move",
                                    "Resigned",
                                    "Let go",
                                    "Demoted",
                                    "Passed over",
                                    "Unknown",
                                    "Other",
                                    "Reprimanded",
                                    "Job eval",
                                    "Personal issues"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "motive": {
                            "items": {
                                "enum": [
                                    "NA",
                                    "Espionage",
                                    "Fear",
                                    "Financial",
                                    "Fun",
                                    "Grudge",
                                    "Ideology",
                                    "Convenience",
                                    "Secondary",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Auditor",
                                    "Call center",
                                    "Cashier",
                                    "End-user",
                                    "Executive",
                                    "Finance",
                                    "Helpdesk",
                                    "Human resources",
                                    "Maintenance",
                                    "Manager",
                                    "Guard",
                                    "Developer",
                                    "System admin",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "motive",
                        "variety"
                    ],
                    "type": "object"
                },
                "partner": {
                    "additionalProperties": false,
                    "properties": {
                        "country": {
                            "items": {
                                "enum": [
                                    "AD",
                                    "AE",
                                    "AF",
                                    "AG",
                                    "AI",
                                    "AL",
                                    "AM",
                                    "AO",
                                    "AQ",
                                    "AR",
                                    "AS",
                                    "AT",
                                    "AU",
                                    "AW",
                                    "AX",
                                    "AZ",
                                    "BA",
                                    "BB",
                                    "BD",
                                    "BE",
                                    "BF",
                                    "BG",
                                    "BH",
                                    "BI",
                                    "BJ",
                                    "BL",
                                    "BM",
                                    "BN",
                                    "BO",
                                    "BQ",
                                    "BR",
                                    "BS",
                                    "BT",
                                    "BV",
                                    "BW",
                                    "BY",
                                    "BZ",
                                    "CA",
                                    "CC",
                                    "CD",
                                    "CF",
                                    "CG",
                                    "CH",
                                    "CI",
                                    "CK",
                                    "CL",
                                    "CM",
                                    "CN",
                                    "CO",
                                    "CR",
                                    "CU",
                                    "CV",
                                    "CW",
                                    "CX",
                                    "CY",
                                    "CZ",
                                    "DE",
                                    "DJ",
                                    "DK",
                                    "DM",
                                    "DO",
                                    "DZ",
                                    "EC",
                                    "EE",
                                    "EG",
                                    "EH",
                                    "ER",
                                    "ES",
                                    "ET",
                                    "FI",
                                    "FJ",
                                    "FK",
                                    "FM",
                                    "FO",
                                    "FR",
                                    "GA",
                                    "GB",
                                    "GD",
                                    "GE",
                                    "GF",
                                    "GG",
                                    "GH",
                                    "GI",
                                    "GL",
                                    "GM",
                                    "GN",
                                    "GP",
                                    "GQ",
                                    "GR",
                                    "GS",
                                    "GT",
                                    "GU",
                                    "GW",
                                    "GY",
                                    "HK",
                                    "HM",
                                    "HN",
                                    "HR",
                                    "HT",
                                    "HU",
                                    "ID",
                                    "IE",
                                    "IL",
                                    "IM",
                                    "IN",
                                    "IO",
                                    "IQ",
                                    "IR",
                                    "IS",
                                    "IT",
                                    "JE",
                                    "JM",
                                    "JO",
                                    "JP",
                                    "KE",
                                    "KG",
                                    "KH",
                                    "KI",
                                    "KM",
                                    "KN",
                                    "KP",
                                    "KR",
                                    "KW",
                                    "KY",
                                    "KZ",
                                    "LA",
                                    "LB",
                                    "LC",
                                    "LI",
                                    "LK",
                                    "LR",
                                    "LS",
                                    "LT",
                                    "LU",
                                    "LV",
                                    "LY",
                                    "MA",
                                    "MC",
                                    "MD",
                                    "ME",
                                    "MF",
                                    "MG",
                                    "MH",
                                    "MK",
                                    "ML",
                                    "MM",
                                    "MN",
                                    "MO",
                                    "MP",
                                    "MQ",
                                    "MR",
                                    "MS",
                                    "MT",
                                    "MU",
                                    "MV",
                                    "MW",
                                    "MX",
                                    "MY",
                                    "MZ",
                                    "NA",
                                    "NC",
                                    "NE",
                                    "NF",
                                    "NG",
                                    "NI",
                                    "NL",
                                    "NO",
                                    "NP",
                                    "NR",
                                    "NU",
                                    "NZ",
                                    "OM",
                                    "Other",
                                    "PA",
                                    "PE",
                                    "PF",
                                    "PG",
                                    "PH",
                                    "PK",
                                    "PL",
                                    "PM",
                                    "PN",
                                    "PR",
                                    "PS",
                                    "PT",
                                    "PW",
                                    "PY",
                                    "QA",
                                    "RE",
                                    "RO",
                                    "RS",
                                    "RU",
                                    "RW",
                                    "SA",
                                    "SB",
                                    "SC",
                                    "SD",
                                    "SE",
                                    "SG",
                                    "SH",
                                    "SI",
                                    "SJ",
                                    "SK",
                                    "SL",
                                    "SM",
                                    "SN",
                                    "SO",
                                    "SR",
                                    "SS",
                                    "ST",
                                    "SV",
                                    "SX",
                                    "SY",
                                    "SZ",
                                    "TC",
                                    "TD",
                                    "TF",
                                    "TG",
                                    "TH",
                                    "TJ",
                                    "TK",
                                    "TL",
                                    "TM",
                                    "TN",
                                    "TO",
                                    "TR",
                                    "TT",
                                    "TV",
                                    "TW",
                                    "TZ",
                                    "UA",
                                    "UG",
                                    "UM",
                                    "US",
                                    "UY",
                                    "UZ",
                                    "Unknown",
                                    "VA",
                                    "VC",
                                    "VE",
                                    "VG",
                                    "VI",
                                    "VN",
                                    "VU",
                                    "WF",
                                    "WS",
                                    "YE",
                                    "YT",
                                    "ZA",
                                    "ZM",
                                    "ZW"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "industry": {
                            "maxLength": 6,
                            "minLength": 2,
                            "pattern": "\\d{2}-?\\d{0,4}",
                            "type": "string"
                        },
                        "motive": {
                            "items": {
                                "enum": [
                                    "NA",
                                    "Espionage",
                                    "Fear",
                                    "Financial",
                                    "Fun",
                                    "Grudge",
                                    "Ideology",
                                    "Convenience",
                                    "Secondary",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "region": {
                            "items": {
                                "maxLength": 6,
                                "minLength": 6,
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "country",
                        "motive"
                    ],
                    "type": "object"
                },
                "unknown": {
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        }
                    },
                    "type": "object"
                }
            },
            "type": "object"
        },
        "asset": {
            "additionalProperties": false,
            "minProperties": 1,
            "properties": {
                "assets": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "amount": {
                                "type": "integer"
                            },
                            "variety": {
                                "enum": [
                                    "S - Authentication",
                                    "S - Backup",
                                    "S - Database",
                                    "S - DHCP",
                                    "S - Directory",
                                    "S - DCS",
                                    "S - DNS",
                                    "S - File",
                                    "S - Log",
                                    "S - Mail",
                                    "S - Mainframe",
                                    "S - Payment switch",
                                    "S - POS controller",
                                    "S - Print",
                                    "S - Proxy",
                                    "S - Remote access",
                                    "S - SCADA",
                                    "S - Web application",
                                    "S - Code repository",
                                    "S - VM host",
                                    "S - Other",
                                    "S - Unknown",
                                    "N - Access reader",
                                    "N - Camera",
                                    "N - Firewall",
                                    "N - HSM",
                                    "N - IDS",
                                    "N - Broadband",
                                    "N - PBX",
                                    "N - Private WAN",
                                    "N - PLC",
                                    "N - Public WAN",
                                    "N - RTU",
                                    "N - Router or switch",
                                    "N - SAN",
                                    "N - Telephone",
                                    "N - VoIP adapter",
                                    "N - LAN",
                                    "N - WLAN",
                                    "N - Other",
                                    "U - Auth token",
                                    "U - Desktop",
                                    "U - Laptop",
                                    "U - Media",
                                    "U - Mobile phone",
                                    "U - Peripheral",
                                    "U - POS terminal",
                                    "U - Tablet",
                                    "U - Telephone",
                                    "U - VoIP phone",
                                    "U - Other",
                                    "T - ATM",
                                    "T - PED pad",
                                    "T - Gas terminal",
                                    "T - Kiosk",
                                    "T - Other",
                                    "M - Tapes",
                                    "M - Disk media",
                                    "M - Documents",
                                    "M - Flash drive",
                                    "M - Disk drive",
                                    "M - Smart card",
                                    "M - Payment card",
                                    "M - Other",
                                    "P - System admin",
                                    "P - Auditor",
                                    "P - Call center",
                                    "P - Cashier",
                                    "P - Customer",
                                    "P - Developer",
                                    "P - End-user",
                                    "P - Executive",
                                    "P - Finance",
                                    "P - Former employee",
                                    "P - Guard",
                                    "P - Helpdesk",
                                    "P - Human resources",
                                    "P - Maintenance",
                                    "P - Manager",
                                    "P - Partner",
                                    "P - Other",
                                    "Unknown"
                                ],
                                "type": "string"
                            }
                        },
                        "required": [
                            "variety"
                        ],
                        "type": "object"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "cloud": {
                    "type": "string"
                },
                "country": {
                    "items": {
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "governance": {
                    "items": {
                        "enum": [
                            "Personally owned",
                            "3rd party owned",
                            "3rd party managed",
                            "3rd party hosted",
                            "Internally isolated",
                            "Unknown"
                        ],
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "notes": {
                    "minLength": 1,
                    "type": "string"
                }
            },
            "type": "object"
        },
        "attribute": {
            "additionalProperties": false,
            "minProperties": 1,
            "properties": {
                "availability": {
                    "properties": {
                        "duration": {
                            "additionalProperties": false,
                            "properties": {
                                "unit": {
                                    "enum": [
                                        "NA",
                                        "Seconds",
                                        "Minutes",
                                        "Hours",
                                        "Days",
                                        "Weeks",
                                        "Months",
                                        "Years",
                                        "Never",
                                        "Unknown"
                                    ],
                                    "type": "string"
                                },
                                "value": {
                                    "type": "number"
                                }
                            },
                            "required": [
                                "unit"
                            ],
                            "type": "object"
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Destruction",
                                    "Loss",
                                    "Interruption",
                                    "Degradation",
                                    "Acceleration",
                                    "Obscuration",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "variety"
                    ],
                    "type": "object"
                },
                "confidentiality": {
                    "additionalProperties": false,
                    "properties": {
                        "data": {
                            "items": {
                                "additionalProperties": false,
                                "properties": {
                                    "amount": {
                                        "type": "integer"
                                    },
                                    "variety": {
                                        "enum": [
                                            "Credentials",
                                            "Bank",
                                            "Classified",
                                            "Copyrighted",
                                            "Digital certificate",
                                            "Medical",
                                            "Payment",
                                            "Personal",
                                            "Internal",
                                            "Source code",
                                            "System",
                                            "Secrets",
                                            "Virtual currency",
                                            "Unknown",
                                            "Other"
                                        ],
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "variety"
                                ],
                                "type": "object"
                            },
                            "minItems": 1,
                            "type": "array"
                        },
                        "data_disclosure": {
                            "enum": [
                                "Yes",
                                "Potentially",
                                "No",
                                "Unknown"
                            ],
                            "type": "string"
                        },
                        "data_total": {
                            "type": "integer"
                        },
                        "data_victim": {
                            "items": {
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "state": {
                            "items": {
                                "enum": [
                                    "Stored",
                                    "Stored encrypted",
                                    "Stored unencrypted",
                                    "Transmitted",
                                    "Transmitted encrypted",
                                    "Transmitted unencrypted",
                                    "Processed",
                                    "Unknown"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "data_disclosure"
                    ],
                    "type": "object"
                },
                "integrity": {
                    "additionalProperties": false,
                    "properties": {
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "variety": {
                            "items": {
                                "enum": [
                                    "Created account",
                                    "Defacement",
                                    "Hardware tampering",
                                    "Alter behavior",
                                    "Fraudulent transaction",
                                    "Log tampering",
                                    "Repurpose",
                                    "Misrepresentation",
                                    "Modify configuration",
                                    "Modify privileges",
                                    "Modify data",
                                    "Software installation",
                                    "Unknown",
                                    "Other"
                                ],
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array",
                            "_uniqueItems": true
                        }
                    },
                    "required": [
                        "variety"
                    ],
                    "type": "object"
                }
            },
            "type": "object"
        },
        "campaign_id": {
            "type": "string"
        },
        "confidence": {
            "enum": [
                "High",
                "Medium",
                "Low",
                "None"
            ],
            "type": "string"
        },
        "control_failure": {
            "type": "string"
        },
        "corrective_action": {
            "type": "string"
        },
        "cost_corrective_action": {
            "enum": [
                "Simple and cheap",
                "Difficult and expensive",
                "Something in-between",
                "Unknown"
            ],
            "type": "string"
        },
        "discovery_method": {
            "enum": [
                "Ext - actor disclosure",
                "Ext - fraud detection",
                "Ext - monitoring service",
                "Ext - customer",
                "Ext - audit",
                "Ext - unknown",
                "Int - antivirus",
                "Int - incident response",
                "Int - infrastructure monitoring",
                "Int - financial audit",
                "Int - fraud detection",
                "Int - HIDS",
                "Int - IT review",
                "Int - log review",
                "Int - NIDS",
                "Ext - law enforcement",
                "Int - security alarm",
                "Int - reported by employee",
                "Int - unknown",
                "Prt - monitoring service",
                "Prt - audit",
                "Prt - antivirus",
                "Prt - incident response",
                "Prt - unknown",
                "Prt - other",
                "Ext - incident response",
                "Ext - found documents",
                "Ext - suspicious traffic",
                "Ext - emergency response team",
                "Int - data loss prevention",
                "Unknown",
                "Other"
            ],
            "type": "string"
        },
        "discovery_notes": {
            "minLength": 1,
            "type": "string"
        },
        "impact": {
            "additionalProperties": false,
            "properties": {
                "iso_currency_code": {
                    "enum": [
                        "AED",
                        "AFN",
                        "ALL",
                        "AMD",
                        "ANG",
                        "AOA",
                        "ARS",
                        "AUD",
                        "AWG",
                        "AZN",
                        "BAM",
                        "BBD",
                        "BDT",
                        "BGN",
                        "BHD",
                        "BIF",
                        "BMD",
                        "BND",
                        "BOB",
                        "BRL",
                        "BSD",
                        "BTN",
                        "BWP",
                        "BYR",
                        "BZD",
                        "CAD",
                        "CDF",
                        "CHF",
                        "CLP",
                        "CNY",
                        "COP",
                        "CRC",
                        "CUC",
                        "CUP",
                        "CVE",
                        "CZK",
                        "DJF",
                        "DKK",
                        "DOP",
                        "DZD",
                        "EGP",
                        "ERN",
                        "ETB",
                        "EUR",
                        "FJD",
                        "FKP",
                        "GBP",
                        "GEL",
                        "GGP",
                        "GHS",
                        "GIP",
                        "GMD",
                        "GNF",
                        "GTQ",
                        "GYD",
                        "HKD",
                        "HNL",
                        "HRK",
                        "HTG",
                        "HUF",
                        "IDR",
                        "ILS",
                        "IMP",
                        "INR",
                        "IQD",
                        "IRR",
                        "ISK",
                        "JEP",
                        "JMD",
                        "JOD",
                        "JPY",
                        "KES",
                        "KGS",
                        "KHR",
                        "KMF",
                        "KPW",
                        "KRW",
                        "KWD",
                        "KYD",
                        "KZT",
                        "LAK",
                        "LBP",
                        "LKR",
                        "LRD",
                        "LSL",
                        "LTL",
                        "LVL",
                        "LYD",
                        "MAD",
                        "MDL",
                        "MGA",
                        "MKD",
                        "MMK",
                        "MNT",
                        "MOP",
                        "MRO",
                        "MUR",
                        "MVR",
                        "MWK",
                        "MXN",
                        "MYR",
                        "MZN",
                        "NAD",
                        "NGN",
                        "NIO",
                        "NOK",
                        "NPR",
                        "NZD",
                        "OMR",
                        "PAB",
                        "PEN",
                        "PGK",
                        "PHP",
                        "PKR",
                        "PLN",
                        "PYG",
                        "QAR",
                        "RON",
                        "RSD",
                        "RUB",
                        "RWF",
                        "SAR",
                        "SBD",
                        "SCR",
                        "SDG",
                        "SEK",
                        "SGD",
                        "SHP",
                        "SLL",
                        "SOS",
                        "SPL",
                        "SRD",
                        "STD",
                        "SVC",
                        "SYP",
                        "SZL",
                        "THB",
                        "TJS",
                        "TMT",
                        "TND",
                        "TOP",
                        "TRY",
                        "TTD",
                        "TVD",
                        "TWD",
                        "TZS",
                        "UAH",
                        "UGX",
                        "USD",
                        "UYU",
                        "UZS",
                        "VEF",
                        "VND",
                        "VUV",
                        "WST",
                        "XAF",
                        "XCD",
                        "XDR",
                        "XOF",
                        "XPF",
                        "YER",
                        "ZAR",
                        "ZMK",
                        "ZWD"
                    ],
                    "type": "string"
                },
                "loss": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "amount": {
                                "type": "number"
                            },
                            "max_amount": {
                                "type": "number"
                            },
                            "min_amount": {
                                "type": "number"
                            },
                            "rating": {
                                "enum": [
                                    "Major",
                                    "Moderate",
                                    "Minor",
                                    "None",
                                    "Unknown"
                                ],
                                "type": "string"
                            },
                            "variety": {
                                "enum": [
                                    "Asset and fraud",
                                    "Brand damage",
                                    "Business disruption",
                                    "Operating costs",
                                    "Legal and regulatory",
                                    "Competitive advantage",
                                    "Response and recovery"
                                ],
                                "type": "string"
                            }
                        },
                        "required": [
                            "variety"
                        ],
                        "type": "object"
                    },
                    "minItems": 1,
                    "type": "array"
                },
                "notes": {
                    "minLength": 1,
                    "type": "string"
                },
                "overall_amount": {
                    "type": "number"
                },
                "overall_max_amount": {
                    "type": "number"
                },
                "overall_min_amount": {
                    "type": "number"
                },
                "overall_rating": {
                    "enum": [
                        "Insignificant",
                        "Distracting",
                        "Painful",
                        "Damaging",
                        "Catastrophic",
                        "Unknown"
                    ],
                    "type": "string"
                }
            },
            "required": [
                "overall_rating"
            ],
            "type": "object"
        },
        "incident_id": {
            "type": "string"
        },
        "ioc": {
            "items": {
                "additionalProperties": false,
                "properties": {
                    "comment": {
                        "type": "string"
                    },
                    "indicator": {
                        "type": "string"
                    }
                },
                "required": [
                    "indicator"
                ],
                "type": "object"
            },
            "minItems": 1,
            "type": "array"
        },
        "notes": {
            "minLength": 1,
            "type": "string"
        },
        "plus": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "additionalProperties": false,
            "description": "VERIZON plus schema version 1.3",
            "properties": {
                "analysis_status": {
                    "enum": [
                        "Ineligible",
                        "Needs review",
                        "In-progress",
                        "First pass",
                        "Validated",
                        "Finalized",
                        "No Report"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "analyst": {
                    "minLength": 1,
                    "type": "string"
                },
                "analyst_notes": {
                    "minLength": 1,
                    "type": "string"
                },
                "antiforensic_measures": {
                    "items": {
                        "enum": [
                            "No evidence of AF",
                            "Data Wiping",
                            "Data Hiding",
                            "Data Corruption",
                            "Unknown"
                        ],
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "asset": {
                    "additionalProperties": false,
                    "properties": {
                        "total": {
                            "minLength": 1,
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                "asset_os": {
                    "items": {
                        "enum": [
                            "Not applicable",
                            "Android",
                            "Apple iOS",
                            "BlackBerry OS",
                            "Linux",
                            "Mac OSX",
                            "Mainframe",
                            "Symbian",
                            "Unix",
                            "webOS",
                            "Windows",
                            "Windows Phone",
                            "Unknown",
                            "Other"
                        ],
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "attack_difficulty_initial": {
                    "enum": [
                        "Not Applicable",
                        "Unknown",
                        "Very Low",
                        "Low",
                        "Moderate",
                        "High"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "attack_difficulty_legacy": {
                    "enum": [
                        "Not Applicable",
                        "Unknown",
                        "Very Low",
                        "Low",
                        "Moderate",
                        "High"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "attack_difficulty_subsequent": {
                    "enum": [
                        "Not Applicable",
                        "Unknown",
                        "Very Low",
                        "Low",
                        "Moderate",
                        "High"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "attribute": {
                    "additionalProperties": false,
                    "properties": {
                        "confidentiality": {
                            "additionalProperties": false,
                            "properties": {
                                "credit_monitoring": {
                                    "minLength": 1,
                                    "type": "string"
                                },
                                "credit_monitoring_years": {
                                    "minLength": 1,
                                    "type": "integer"
                                },
                                "data_abuse": {
                                    "minLength": 1,
                                    "type": "string"
                                },
                                "data_misuse": {
                                    "minLength": 1,
                                    "type": "string"
                                },
                                "partner_data": {
                                    "minLength": 1,
                                    "type": "string"
                                },
                                "partner_number": {
                                    "minLength": 1,
                                    "type": "integer"
                                }
                            },
                            "type": "object"
                        }
                    },
                    "type": "object"
                },
                "control_inadequacies_legacy": {
                    "items": {
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "created": {
                    "minLength": 1,
                    "type": "string"
                },
                "dbir_year": {
                    "minLength": 1,
                    "type": "integer"
                },
                "event_chain": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "action": {
                                "enum": [
                                    "mal",
                                    "hak",
                                    "soc",
                                    "mis",
                                    "phy",
                                    "err",
                                    "env"
                                ],
                                "minLength": 1,
                                "type": "string"
                            },
                            "actor": {
                                "enum": [
                                    "ext",
                                    "int",
                                    "prt"
                                ],
                                "minLength": 1,
                                "type": "string"
                            },
                            "asset": {
                                "enum": [
                                    "srv",
                                    "net",
                                    "usr",
                                    "off",
                                    "ppl"
                                ],
                                "minLength": 1,
                                "type": "string"
                            },
                            "attribute": {
                                "enum": [
                                    "cp",
                                    "ia",
                                    "au"
                                ],
                                "minLength": 1,
                                "type": "string"
                            },
                            "summary": {
                                "minLength": 1,
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "f500": {
                    "minLength": 1,
                    "type": "string"
                },
                "github": {
                    "minLength": 1,
                    "type": "string"
                },
                "investigator": {
                    "minLength": 1,
                    "type": "string"
                },
                "master_id": {
                    "minLength": 1,
                    "type": "string"
                },
                "modified": {
                    "minLength": 1,
                    "type": "string"
                },
                "pci": {
                    "additionalProperties": false,
                    "properties": {
                        "compliance_status": {
                            "enum": [
                                "Not Compliant",
                                "Found Compliant",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "merchant_level": {
                            "enum": [
                                "Level 1",
                                "Level 2",
                                "Level 3",
                                "Level 4",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_1": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_10": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_11": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_12": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_2": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_3": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_4": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_5": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_6": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_7": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_8": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "req_9": {
                            "enum": [
                                "Not Applicable",
                                "In Place",
                                "Not In Place",
                                "Unknown"
                            ],
                            "minLength": 1,
                            "type": "string"
                        },
                        "status_determined": {
                            "minLength": 1,
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                "public_disclosure": {
                    "minLength": 1,
                    "type": "string"
                },
                "security_maturity": {
                    "enum": [
                        "Initial",
                        "Managed",
                        "Defined",
                        "Measured",
                        "Optimizing",
                        "Unknown"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "targeted": {
                    "enum": [
                        "Unknown",
                        "Not Applicable",
                        "Opportunistic",
                        "Targeted"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "timeline": {
                    "additionalProperties": false,
                    "properties": {
                        "notification": {
                            "additionalProperties": false,
                            "properties": {
                                "day": {
                                    "minLength": 1,
                                    "type": "integer"
                                },
                                "month": {
                                    "minLength": 1,
                                    "type": "integer"
                                },
                                "year": {
                                    "minLength": 1,
                                    "type": "integer"
                                }
                            },
                            "type": "object"
                        }
                    },
                    "type": "object"
                },
                "unfollowed_policies": {
                    "enum": [
                        "Yes",
                        "No",
                        "Unknown"
                    ],
                    "minLength": 1,
                    "type": "string"
                },
                "unknown_unknowns": {
                    "items": {
                        "enum": [
                            "Assets that had unknown user accounts or privileges",
                            "Assets unknown or unclaimed by the organization (or business group affected)",
                            "Assets that had unknown network connections or accessibility",
                            "Data the organization did not know existed on a particular asset",
                            "Unknown"
                        ],
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "victim_name": {
                    "items": {
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                }
            },
            "required": [
                "master_id"
            ],
            "type": "object"
        },
        "reference": {
            "type": "string"
        },
        "schema_version": {
            "type": "string"
        },
        "security_incident": {
            "enum": [
                "Confirmed",
                "Suspected",
                "False positive",
                "Near miss"
            ],
            "type": "string"
        },
        "source_id": {
            "type": "string"
        },
        "summary": {
            "type": "string"
        },
        "targeted": {
            "enum": [
                "Opportunistic",
                "Targeted",
                "Unknown",
                "NA"
            ],
            "type": "string"
        },
        "timeline": {
            "additionalProperties": false,
            "properties": {
                "compromise": {
                    "additionalProperties": false,
                    "properties": {
                        "unit": {
                            "enum": [
                                "NA",
                                "Seconds",
                                "Minutes",
                                "Hours",
                                "Days",
                                "Weeks",
                                "Months",
                                "Years",
                                "Never",
                                "Unknown"
                            ],
                            "type": "string"
                        },
                        "value": {
                            "type": "number"
                        }
                    },
                    "required": [
                        "unit"
                    ],
                    "type": "object"
                },
                "containment": {
                    "additionalProperties": false,
                    "properties": {
                        "unit": {
                            "enum": [
                                "NA",
                                "Seconds",
                                "Minutes",
                                "Hours",
                                "Days",
                                "Weeks",
                                "Months",
                                "Years",
                                "Never",
                                "Unknown"
                            ],
                            "type": "string"
                        },
                        "value": {
                            "type": "number"
                        }
                    },
                    "required": [
                        "unit"
                    ],
                    "type": "object"
                },
                "discovery": {
                    "additionalProperties": false,
                    "properties": {
                        "unit": {
                            "enum": [
                                "NA",
                                "Seconds",
                                "Minutes",
                                "Hours",
                                "Days",
                                "Weeks",
                                "Months",
                                "Years",
                                "Never",
                                "Unknown"
                            ],
                            "type": "string"
                        },
                        "value": {
                            "type": "number"
                        }
                    },
                    "required": [
                        "unit"
                    ],
                    "type": "object"
                },
                "exfiltration": {
                    "additionalProperties": false,
                    "properties": {
                        "unit": {
                            "enum": [
                                "NA",
                                "Seconds",
                                "Minutes",
                                "Hours",
                                "Days",
                                "Weeks",
                                "Months",
                                "Years",
                                "Never",
                                "Unknown"
                            ],
                            "type": "string"
                        },
                        "value": {
                            "type": "number"
                        }
                    },
                    "required": [
                        "unit"
                    ],
                    "type": "object"
                },
                "incident": {
                    "additionalProperties": false,
                    "properties": {
                        "day": {
                            "maximum": 31,
                            "minimum": 1,
                            "type": "integer"
                        },
                        "month": {
                            "maximum": 12,
                            "minimum": 1,
                            "type": "integer"
                        },
                        "time": {
                            "type": "string"
                        },
                        "year": {
                            "maximum": 2015,
                            "minimum": 1950,
                            "type": "integer"
                        }
                    },
                    "required": [
                        "year"
                    ],
                    "type": "object"
                }
            },
            "required": [
                "incident"
            ],
            "type": "object"
        },
        "victim": {
            "additionalProperties": false,
            "properties": {
                "country": {
                    "items": {
                        "enum": [
                            "AD",
                            "AE",
                            "AF",
                            "AG",
                            "AI",
                            "AL",
                            "AM",
                            "AO",
                            "AQ",
                            "AR",
                            "AS",
                            "AT",
                            "AU",
                            "AW",
                            "AX",
                            "AZ",
                            "BA",
                            "BB",
                            "BD",
                            "BE",
                            "BF",
                            "BG",
                            "BH",
                            "BI",
                            "BJ",
                            "BL",
                            "BM",
                            "BN",
                            "BO",
                            "BQ",
                            "BR",
                            "BS",
                            "BT",
                            "BV",
                            "BW",
                            "BY",
                            "BZ",
                            "CA",
                            "CC",
                            "CD",
                            "CF",
                            "CG",
                            "CH",
                            "CI",
                            "CK",
                            "CL",
                            "CM",
                            "CN",
                            "CO",
                            "CR",
                            "CU",
                            "CV",
                            "CW",
                            "CX",
                            "CY",
                            "CZ",
                            "DE",
                            "DJ",
                            "DK",
                            "DM",
                            "DO",
                            "DZ",
                            "EC",
                            "EE",
                            "EG",
                            "EH",
                            "ER",
                            "ES",
                            "ET",
                            "FI",
                            "FJ",
                            "FK",
                            "FM",
                            "FO",
                            "FR",
                            "GA",
                            "GB",
                            "GD",
                            "GE",
                            "GF",
                            "GG",
                            "GH",
                            "GI",
                            "GL",
                            "GM",
                            "GN",
                            "GP",
                            "GQ",
                            "GR",
                            "GS",
                            "GT",
                            "GU",
                            "GW",
                            "GY",
                            "HK",
                            "HM",
                            "HN",
                            "HR",
                            "HT",
                            "HU",
                            "ID",
                            "IE",
                            "IL",
                            "IM",
                            "IN",
                            "IO",
                            "IQ",
                            "IR",
                            "IS",
                            "IT",
                            "JE",
                            "JM",
                            "JO",
                            "JP",
                            "KE",
                            "KG",
                            "KH",
                            "KI",
                            "KM",
                            "KN",
                            "KP",
                            "KR",
                            "KW",
                            "KY",
                            "KZ",
                            "LA",
                            "LB",
                            "LC",
                            "LI",
                            "LK",
                            "LR",
                            "LS",
                            "LT",
                            "LU",
                            "LV",
                            "LY",
                            "MA",
                            "MC",
                            "MD",
                            "ME",
                            "MF",
                            "MG",
                            "MH",
                            "MK",
                            "ML",
                            "MM",
                            "MN",
                            "MO",
                            "MP",
                            "MQ",
                            "MR",
                            "MS",
                            "MT",
                            "MU",
                            "MV",
                            "MW",
                            "MX",
                            "MY",
                            "MZ",
                            "NA",
                            "NC",
                            "NE",
                            "NF",
                            "NG",
                            "NI",
                            "NL",
                            "NO",
                            "NP",
                            "NR",
                            "NU",
                            "NZ",
                            "OM",
                            "Other",
                            "PA",
                            "PE",
                            "PF",
                            "PG",
                            "PH",
                            "PK",
                            "PL",
                            "PM",
                            "PN",
                            "PR",
                            "PS",
                            "PT",
                            "PW",
                            "PY",
                            "QA",
                            "RE",
                            "RO",
                            "RS",
                            "RU",
                            "RW",
                            "SA",
                            "SB",
                            "SC",
                            "SD",
                            "SE",
                            "SG",
                            "SH",
                            "SI",
                            "SJ",
                            "SK",
                            "SL",
                            "SM",
                            "SN",
                            "SO",
                            "SR",
                            "SS",
                            "ST",
                            "SV",
                            "SX",
                            "SY",
                            "SZ",
                            "TC",
                            "TD",
                            "TF",
                            "TG",
                            "TH",
                            "TJ",
                            "TK",
                            "TL",
                            "TM",
                            "TN",
                            "TO",
                            "TR",
                            "TT",
                            "TV",
                            "TW",
                            "TZ",
                            "UA",
                            "UG",
                            "UM",
                            "US",
                            "UY",
                            "UZ",
                            "Unknown",
                            "VA",
                            "VC",
                            "VE",
                            "VG",
                            "VI",
                            "VN",
                            "VU",
                            "WF",
                            "WS",
                            "YE",
                            "YT",
                            "ZA",
                            "ZM",
                            "ZW"
                        ],
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "employee_count": {
                    "enum": [
                        "1 to 10",
                        "11 to 100",
                        "101 to 1000",
                        "Small",
                        "Large",
                        "1001 to 10000",
                        "10001 to 25000",
                        "25001 to 50000",
                        "50001 to 100000",
                        "Over 100000",
                        "Unknown"
                    ],
                    "type": "string"
                },
                "industry": {
                    "maxLength": 6,
                    "minLength": 2,
                    "pattern": "\\d{2}-?\\d{0,4}",
                    "type": "string"
                },
                "locations_affected": {
                    "type": "integer"
                },
                "notes": {
                    "minLength": 1,
                    "type": "string"
                },
                "region": {
                    "items": {
                        "maxLength": 6,
                        "minLength": 6,
                        "type": "string"
                    },
                    "minItems": 1,
                    "type": "array",
                    "_uniqueItems": true
                },
                "revenue": {
                    "additionalProperties": false,
                    "minProperties": 1,
                    "properties": {
                        "amount": {
                            "type": "integer"
                        },
                        "iso_currency_code": {
                            "enum": [
                                "AED",
                                "AFN",
                                "ALL",
                                "AMD",
                                "ANG",
                                "AOA",
                                "ARS",
                                "AUD",
                                "AWG",
                                "AZN",
                                "BAM",
                                "BBD",
                                "BDT",
                                "BGN",
                                "BHD",
                                "BIF",
                                "BMD",
                                "BND",
                                "BOB",
                                "BRL",
                                "BSD",
                                "BTN",
                                "BWP",
                                "BYR",
                                "BZD",
                                "CAD",
                                "CDF",
                                "CHF",
                                "CLP",
                                "CNY",
                                "COP",
                                "CRC",
                                "CUC",
                                "CUP",
                                "CVE",
                                "CZK",
                                "DJF",
                                "DKK",
                                "DOP",
                                "DZD",
                                "EGP",
                                "ERN",
                                "ETB",
                                "EUR",
                                "FJD",
                                "FKP",
                                "GBP",
                                "GEL",
                                "GGP",
                                "GHS",
                                "GIP",
                                "GMD",
                                "GNF",
                                "GTQ",
                                "GYD",
                                "HKD",
                                "HNL",
                                "HRK",
                                "HTG",
                                "HUF",
                                "IDR",
                                "ILS",
                                "IMP",
                                "INR",
                                "IQD",
                                "IRR",
                                "ISK",
                                "JEP",
                                "JMD",
                                "JOD",
                                "JPY",
                                "KES",
                                "KGS",
                                "KHR",
                                "KMF",
                                "KPW",
                                "KRW",
                                "KWD",
                                "KYD",
                                "KZT",
                                "LAK",
                                "LBP",
                                "LKR",
                                "LRD",
                                "LSL",
                                "LTL",
                                "LVL",
                                "LYD",
                                "MAD",
                                "MDL",
                                "MGA",
                                "MKD",
                                "MMK",
                                "MNT",
                                "MOP",
                                "MRO",
                                "MUR",
                                "MVR",
                                "MWK",
                                "MXN",
                                "MYR",
                                "MZN",
                                "NAD",
                                "NGN",
                                "NIO",
                                "NOK",
                                "NPR",
                                "NZD",
                                "OMR",
                                "PAB",
                                "PEN",
                                "PGK",
                                "PHP",
                                "PKR",
                                "PLN",
                                "PYG",
                                "QAR",
                                "RON",
                                "RSD",
                                "RUB",
                                "RWF",
                                "SAR",
                                "SBD",
                                "SCR",
                                "SDG",
                                "SEK",
                                "SGD",
                                "SHP",
                                "SLL",
                                "SOS",
                                "SPL",
                                "SRD",
                                "STD",
                                "SVC",
                                "SYP",
                                "SZL",
                                "THB",
                                "TJS",
                                "TMT",
                                "TND",
                                "TOP",
                                "TRY",
                                "TTD",
                                "TVD",
                                "TWD",
                                "TZS",
                                "UAH",
                                "UGX",
                                "USD",
                                "UYU",
                                "UZS",
                                "VEF",
                                "VND",
                                "VUV",
                                "WST",
                                "XAF",
                                "XCD",
                                "XDR",
                                "XOF",
                                "XPF",
                                "YER",
                                "ZAR",
                                "ZMK",
                                "ZWD"
                            ],
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                "secondary": {
                    "additionalProperties": false,
                    "minProperties": 1,
                    "properties": {
                        "amount": {
                            "type": "integer"
                        },
                        "notes": {
                            "minLength": 1,
                            "type": "string"
                        },
                        "victim_id": {
                            "items": {
                                "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                        }
                    },
                    "type": "object"
                },
                "state": {
                    "type": "string"
                },
                "victim_id": {
                    "type": "string"
                }
            },
            "required": [
                "country",
                "employee_count",
                "industry"
            ],
            "type": "object"
        }
    },
    "required": [
        "actor",
        "action",
        "discovery_method",
        "schema_version",
        "asset",
        "timeline",
        "incident_id",
        "security_incident"
    ],
    "type": "object"
}