{
  "type": "object",
  "additionalProperties": false,
  "required": ["results"],
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["research_subject_id", "claims", "gaps"],
        "properties": {
          "research_subject_id": {"type": "string"},
          "claims": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": ["kind", "required", "statement_native",
                           "delta_effect", "discriminator_family",
                           "sources", "evidence_span"],
              "properties": {
                "kind": {"type": "string", "enum": ["fact", "prohibition"]},
                "required": {"type": "boolean"},
                "statement_native": {"type": "string"},
                "delta_effect": {
                  "type": "string",
                  "enum": ["supports_difference", "supports_no_difference",
                           "neutral"]},
                "discriminator_family": {"type": "string"},
                "sources": {"type": "array", "items": {"type": "string"}},
                "evidence_span": {"type": "string"}
              }
            }
          },
          "gaps": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": ["reason", "query", "discriminator",
                           "required_discriminator", "note"],
              "properties": {
                "reason": {"type": "string",
                           "enum": ["not_found", "no_source", "conflict"]},
                "query": {"type": "string"},
                "discriminator": {"type": "string"},
                "required_discriminator": {"type": "boolean"},
                "note": {"type": "string"}
              }
            }
          }
        }
      }
    }
  }
}
