{ "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] } } } } } } } } } } }