{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "claims",
    "uncertainCandidates"
  ],
  "properties": {
    "claims": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "kind",
          "text",
          "modality",
          "actor",
          "subject",
          "epistemicStatus",
          "anchor"
        ],
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^c[1-9][0-9]*$"
          },
          "kind": {
            "type": "string",
            "enum": [
              "empirical",
              "normative",
              "definitional"
            ]
          },
          "text": {
            "type": "string",
            "minLength": 1,
            "maxLength": 400
          },
          "modality": {
            "type": "string",
            "enum": [
              "must",
              "should",
              "may",
              "asserts",
              "hedged"
            ]
          },
          "actor": {
            "type": "string",
            "maxLength": 120
          },
          "subject": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "epistemicStatus": {
            "type": "string",
            "enum": [
              "claim",
              "hypothesis",
              "conjecture"
            ]
          },
          "anchor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2000
          }
        }
      }
    },
    "uncertainCandidates": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "kind",
          "text",
          "modality",
          "actor",
          "subject",
          "epistemicStatus",
          "anchor",
          "reason"
        ],
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^u[1-9][0-9]*$"
          },
          "kind": {
            "type": "string",
            "enum": [
              "empirical",
              "normative",
              "definitional"
            ]
          },
          "text": {
            "type": "string",
            "minLength": 1,
            "maxLength": 400
          },
          "modality": {
            "type": "string",
            "enum": [
              "must",
              "should",
              "may",
              "asserts",
              "hedged"
            ]
          },
          "actor": {
            "type": "string",
            "maxLength": 120
          },
          "subject": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "epistemicStatus": {
            "type": "string",
            "enum": [
              "claim",
              "hypothesis",
              "conjecture"
            ]
          },
          "anchor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2000
          },
          "reason": {
            "type": "string",
            "enum": [
              "attribution-unclear",
              "claim-evidence-boundary",
              "kind-unclear",
              "compound-needs-review",
              "procedure-or-position-unclear"
            ]
          }
        }
      }
    }
  }
}
