{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "properties": {
  "about": {
   "type": "string"
  },
  "as_of": {
   "type": "string"
  },
  "kept_by": {
   "type": "string"
  },
  "risks": {
   "items": {
    "properties": {
     "assign": {
      "type": "array"
     },
     "basis": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "claims": {
      "type": "array"
     },
     "concerns": {
      "type": "array"
     },
     "controls": {
      "type": "array"
     },
     "frameworks": {
      "type": "array"
     },
     "id": {
      "type": "string"
     },
     "impact": {
      "type": "number"
     },
     "likelihood": {
      "type": "number"
     },
     "pages": {
      "type": "array"
     },
     "parent": {
      "type": [
       "null",
       "string"
      ]
     },
     "statement": {
      "type": "string"
     },
     "stories": {
      "type": "array"
     },
     "team": {
      "type": "array"
     },
     "title": {
      "type": "string"
     },
     "weaknesses": {
      "type": "array"
     }
    },
    "required": [
     "assign",
     "basis",
     "category",
     "claims",
     "controls",
     "frameworks",
     "id",
     "impact",
     "likelihood",
     "pages",
     "parent",
     "statement",
     "stories",
     "team",
     "title",
     "weaknesses"
    ],
    "type": "object"
   },
   "type": "array"
  },
  "scales": {
   "properties": {
    "as": {
     "items": {
      "type": "object"
     },
     "type": "array"
    },
    "impact": {
     "items": {
      "type": "object"
     },
     "type": "array"
    },
    "likelihood": {
     "items": {
      "type": "object"
     },
     "type": "array"
    },
    "treatment": {
     "items": {
      "type": "object"
     },
     "type": "array"
    }
   },
   "required": [
    "as",
    "impact",
    "likelihood",
    "treatment"
   ],
   "type": "object"
  },
  "stakeholders": {
   "items": {
    "properties": {
     "about": {
      "type": "string"
     },
     "actors": {
      "type": "array"
     },
     "audience": {
      "type": "string"
     },
     "id": {
      "type": "string"
     },
     "kind": {
      "type": "string"
     },
     "member": {
      "type": "string"
     },
     "name": {
      "type": "string"
     },
     "parent": {
      "type": [
       "null",
       "string"
      ]
     }
    },
    "required": [
     "about",
     "id",
     "kind",
     "name",
     "parent"
    ],
    "type": "object"
   },
   "type": "array"
  },
  "weaknesses": {
   "items": {
    "properties": {
     "about": {
      "type": "string"
     },
     "code": {
      "type": "array"
     },
     "id": {
      "type": "string"
     },
     "name": {
      "type": "string"
     },
     "remediation": {
      "type": "array"
     },
     "vulns": {
      "type": "array"
     }
    },
    "required": [
     "about",
     "id",
     "name"
    ],
    "type": "object"
   },
   "type": "array"
  }
 },
 "required": [
  "about",
  "as_of",
  "kept_by",
  "risks",
  "scales",
  "stakeholders",
  "weaknesses"
 ],
 "title": "grc.json",
 "type": "object"
}
