{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://example.com/root.json",
"type": "object",
"required": [
"scrutin",
"candidatRef",
"avancement",
"resultatsParFonction"
],
"properties": {
"scrutin": {
"$id": "#/properties/scrutin",
"type": "object",
"required": [
"code",
"ordre",
"libelle",
"libelleCourt",
"portee",
"systemeElectoral",
"quorum",
"fonctions",
"postesAPourvoir",
"candidats",
"listes"
],
"properties": {
"code": {
"$id": "#/properties/scrutin/properties/code",
"type": "string",
"examples": ["202603CA35"]
},
"ordre": {
"$id": "#/properties/scrutin/properties/ordre",
"type": "integer",
"examples": [4]
},
"libelle": {
"$id": "#/properties/scrutin/properties/libelle",
"type": "string",
"examples": ["Élection complémentaire des Conseils administratifs (premier tour) du 08 mars 2026"]
},
"libelleCourt": {
"$id": "#/properties/scrutin/properties/libelleCourt",
"type": "string",
"examples": ["Conseil administratif Presinge 2026"]
},
"portee": {
"$id": "#/properties/scrutin/properties/portee",
"type": "string",
"examples": ["Communale"]
},
"systemeElectoral": {
"$id": "#/properties/scrutin/properties/systemeElectoral",
"type": "string",
"examples": ["MAJORITAIRE"]
},
"quorum": {
"$id": "#/properties/scrutin/properties/quorum",
"type": "number",
"examples": [50.0]
},
"fonctions": {
"$id": "#/properties/scrutin/properties/fonctions",
"type": "array",
"items": {
"type": "object",
"required": ["code", "libelle", "libelleMasculin", "libelleFeminin"],
"properties": {
"code": {
"type": "string",
"examples": ["CA"]
},
"libelle": {
"type": "string",
"examples": ["Conseillère ou Conseiller administratif"]
},
"libelleMasculin": {
"type": "string",
"examples": ["Conseiller Administratif"]
},
"libelleFeminin": {
"type": "string",
"examples": ["Conseillère Administratif"]
}
}
}
},
"postesAPourvoir": {
"$id": "#/properties/scrutin/properties/postesAPourvoir",
"type": "array",
"items": {
"type": "object",
"required": ["ordre", "fonctionRef", "nbSieges", "nbSiegesSuppleants"],
"properties": {
"ordre": {
"type": "integer",
"examples": [1]
},
"fonctionRef": {
"type": "string",
"examples": ["CA"]
},
"nbSieges": {
"type": "integer",
"examples": [1]
},
"nbSiegesSuppleants": {
"type": "integer",
"examples": [0]
}
}
}
},
"candidats": {
"$id": "#/properties/scrutin/properties/candidats",
"type": "array",
"items": {
"type": "object",
"required": ["id", "nom", "prenom", "genre"],
"properties": {
"id": {
"type": "integer",
"examples": [801]
},
"nom": {
"type": "string",
"examples": ["LADDI"]
},
"prenom": {
"type": "string",
"examples": ["Snoussi"]
},
"aliasPrenom": {
"type": "string",
"examples": ["Gisèle"]
},
"genre": {
"type": "string",
"examples": ["MASCULIN"]
}
}
}
},
"listes": {
"$id": "#/properties/scrutin/properties/listes",
"type": "array",
"items": {
"type": "object",
"required": ["numero", "libelle", "libelleCourt", "sigle", "apparentement", "sousApparentement", "candidatures"],
"properties": {
"numero": {
"type": "integer",
"examples": [2]
},
"libelle": {
"type": "string",
"examples": ["Ensemble pour Presinge"]
},
"libelleCourt": {
"type": "string",
"examples": ["Ens. pour Presinge"]
},
"sigle": {
"type": "string",
"examples": ["ENSPR"]
},
"apparentement": {
"type": "integer",
"examples": [0]
},
"sousApparentement": {
"type": "integer",
"examples": [0]
},
"candidatures": {
"type": "array",
"items": {
"type": "object",
"required": ["numero", "candidatRef", "fonctionRef", "cumul", "tauxCharge"],
"properties": {
"numero": {
"type": "string",
"examples": ["1"]
},
"candidatRef": {
"type": "integer",
"examples": [801]
},
"fonctionRef": {
"type": "string",
"examples": ["CA"]
},
"cumul": {
"type": "boolean",
"examples": [false]
},
"tauxCharge": {
"type": "number",
"examples": [1.0]
}
}
}
}
}
}
}
}
},
"candidatRef": {
"$id": "#/properties/candidatRef",
"type": "integer",
"examples": [801]
},
"avancement": {
"$id": "#/properties/avancement",
"type": "object",
"required": ["etat", "texte", "dateheure", "composition"],
"properties": {
"etat": {
"$id": "#/properties/avancement/properties/etat",
"type": "string",
"examples": ["Provisoires"]
},
"texte": {
"$id": "#/properties/avancement/properties/texte",
"type": "string",
"examples": ["Résultats provisoires du 08.03.2026 à 13:11"]
},
"dateheure": {
"$id": "#/properties/avancement/properties/dateheure",
"type": "string",
"examples": ["08.03.2026 13:11"]
},
"composition": {
"$id": "#/properties/avancement/properties/composition",
"type": "string",
"examples": ["1 local provisoire"]
}
}
},
"resultatsParFonction": {
"$id": "#/properties/resultatsParFonction",
"type": "array",
"items": {
"type": "object",
"required": ["fonctionRef", "resultats"],
"properties": {
"fonctionRef": {
"type": "string",
"examples": ["CA"]
},
"resultats": {
"type": "object",
"required": ["circonscription", "ordre", "suffrages", "pourcentSuffrage", "elu", "seraitElu", "egalite", "circonscriptionsEnfantes"],
"properties": {
"circonscription": {
"type": "object",
"required": ["type", "id", "numero", "libelle"],
"properties": {
"type": {
"type": "string",
"examples": ["Commune"]
},
"id": {
"type": "string",
"examples": ["6635"]
},
"numero": {
"type": "string",
"examples": ["35"]
},
"libelle": {
"type": "string",
"examples": ["Presinge"]
}
}
},
"ordre": {
"type": "integer",
"examples": [2]
},
"suffrages": {
"type": "integer",
"examples": [109]
},
"pourcentSuffrage": {
"type": "number",
"examples": [34.94]
},
"elu": {
"type": "boolean",
"examples": [false]
},
"seraitElu": {
"type": "boolean",
"examples": [false]
},
"egalite": {
"type": "boolean",
"examples": [false]
},
"circonscriptionsEnfantes": {
"type": "array",
"items": {
"type": "object",
"required": ["circonscription", "suffrages", "pourcentSuffrage", "ratioPourcentSuffrageScrutin"],
"properties": {
"circonscription": {
"type": "object",
"required": ["type", "id", "numero", "libelle"],
"properties": {
"type": {
"type": "string",
"examples": ["Local de vote"]
},
"id": {
"type": "string",
"examples": ["3501"]
},
"numero": {
"type": "string",
"examples": ["35"]
},
"libelle": {
"type": "string",
"examples": ["Presinge"]
}
}
},
"suffrages": {
"type": "integer",
"examples": [0]
},
"pourcentSuffrage": {
"type": "number",
"examples": [0.0]
},
"ratioPourcentSuffrageScrutin": {
"type": "number",
"examples": [0.0]
}
}
}
}
}
}
}
}
}
}
}