{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.prisme-donnees.fr/depenses-publiques/schemas/evaluation.schema.json",
  "title": "Évaluation : méthode, indépendance, version couverte, qualification",
  "type": "object",
  "required": [
    "id",
    "document",
    "titre_court",
    "institution",
    "dispositifs",
    "methode",
    "methode_source",
    "independance",
    "independance_justification",
    "donnees_code_publies",
    "versions_couvertes",
    "periode",
    "qualification"
  ],
  "additionalProperties": false,
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9._-]*$"
    },
    "document": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9._-]*$"
    },
    "titre_court": {
      "type": "string",
      "minLength": 1
    },
    "institution": {
      "type": "string",
      "minLength": 1
    },
    "commanditaire": {
      "type": "string"
    },
    "dispositifs": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9][a-z0-9._-]*$"
      },
      "minItems": 1
    },
    "methode": {
      "type": "string",
      "enum": [
        "essai_randomise",
        "discontinuite_regression",
        "experience_naturelle_tirage",
        "double_difference",
        "appariement",
        "controle_synthetique",
        "variables_instrumentales",
        "regression_controles",
        "avant_apres_comparaison_sommaire",
        "avant_apres_sans_comparaison",
        "suivi_beneficiaires",
        "enquete_satisfaction",
        "etude_qualitative",
        "simulation_ex_ante",
        "microsimulation",
        "modele_macroeconomique",
        "revue_systematique",
        "meta_analyse",
        "controle_audit",
        "non_decrite"
      ]
    },
    "conditions_methode": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "tendances_paralleles_discutees": {
          "type": "boolean"
        }
      }
    },
    "rang_revue": {
      "type": "string",
      "enum": [
        "A",
        "B",
        "C",
        "D"
      ]
    },
    "methode_source": {
      "type": "object",
      "required": [
        "document",
        "page",
        "extrait"
      ],
      "additionalProperties": false,
      "properties": {
        "document": {
          "type": "string",
          "pattern": "^[a-z0-9][a-z0-9._-]*$"
        },
        "page": {
          "type": "integer",
          "minimum": 1,
          "description": "page du fichier PDF"
        },
        "page_imprimee": {
          "type": [
            "string",
            "integer"
          ]
        },
        "extrait": {
          "type": "string",
          "minLength": 8,
          "description": "phrase exacte du document"
        },
        "tableau": {
          "type": "string"
        }
      }
    },
    "independance": {
      "type": "string",
      "enum": [
        "independante",
        "non_independante",
        "inconnue"
      ]
    },
    "independance_justification": {
      "type": "string",
      "minLength": 1
    },
    "donnees_code_publies": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "versions_couvertes": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9][a-z0-9._-]*$"
      },
      "minItems": 1
    },
    "periode": {
      "type": "object",
      "required": [
        "debut",
        "fin"
      ],
      "additionalProperties": false,
      "properties": {
        "debut": {
          "type": "integer"
        },
        "fin": {
          "type": "integer"
        }
      }
    },
    "limites_auteurs": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "document",
          "page",
          "extrait"
        ],
        "additionalProperties": false,
        "properties": {
          "document": {
            "type": "string",
            "pattern": "^[a-z0-9][a-z0-9._-]*$"
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "page du fichier PDF"
          },
          "page_imprimee": {
            "type": [
              "string",
              "integer"
            ]
          },
          "extrait": {
            "type": "string",
            "minLength": 8,
            "description": "phrase exacte du document"
          },
          "tableau": {
            "type": "string"
          }
        }
      }
    },
    "qualification": {
      "type": "object",
      "required": [
        "proposee_par",
        "date"
      ],
      "additionalProperties": false,
      "properties": {
        "proposee_par": {
          "type": "string",
          "minLength": 1
        },
        "date": {
          "type": "string",
          "pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$"
        },
        "validee_par": {
          "type": [
            "string",
            "null"
          ]
        },
        "date_validation": {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^\\d{4}(-\\d{2}(-\\d{2})?)?$"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    }
  }
}
