{
  "$comment": "generated by canon-docs, do not edit",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://beyond10x.github.io/canon/schemas/decisions-1.schema.json",
  "title": "canon-decisions/1",
  "description": "A list of `ExplicitDecision` entries. One entry of a `canon-decisions/1` document. It applies to `outcome` when the outcome requires a decision named `decision` and `case_revision` is the case snapshot's revision. An entry given twice, every key equal, is refused.",
  "type": "array",
  "items": {
    "$ref": "#/$defs/ExplicitDecision"
  },
  "uniqueItems": true,
  "$defs": {
    "Identifier": {
      "description": "A well-formed identifier is not empty, and without whitespace, control characters or Unicode format characters (general category Cf). The pattern checks only for whitespace; Canon also refuses control and Unicode format characters.",
      "type": "string",
      "minLength": 1,
      "pattern": "^\\S+$"
    },
    "ExplicitDecision": {
      "description": "One entry of a `canon-decisions/1` document. It applies to `outcome` when the outcome requires a decision named `decision` and `case_revision` is the case snapshot's revision.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "decision": {
          "description": "Which decision was taken.",
          "$ref": "#/$defs/Identifier"
        },
        "outcome": {
          "description": "The outcome it was taken for.",
          "$ref": "#/$defs/Identifier"
        },
        "principal": {
          "description": "Who took it.",
          "$ref": "#/$defs/Identifier"
        },
        "case_revision": {
          "description": "The case revision it was taken at.",
          "$ref": "#/$defs/Identifier"
        }
      },
      "required": [
        "decision",
        "outcome",
        "principal",
        "case_revision"
      ]
    }
  }
}
