test1

Page 1

Projet Votelec API interne JSON pour la cartographie 04 juillet 2023 Introduction 3 Avertissements......................................................................................................................................3 Structure des URLs................................................................................................................................3 Fréquence de mise à jour......................................................................................................................4 Structure des fichiers.............................................................................................................................4 Fichiers..................................................................................................................................................4 1. scrutin.json................................................................................................................................4 Description 4 Contenu 5 Fréquence de publication 6 Exemple 6 2. results.json 7 Description 7 Contenu.........................................................................................................................................7 Fréquence de publication..............................................................................................................8 Exemple.........................................................................................................................................8 3. countingStatus.json...................................................................................................................9 Description....................................................................................................................................9 Contenu 9 Fréquence de publication 10 Exemple 10 4. echeance.json 11 Description 11 Contenu 11 Fréquence de publication 11 Exemple.......................................................................................................................................11 5. vd_geo_data.json....................................................................................................................12 Description..................................................................................................................................12 Contenu.......................................................................................................................................12 Fréquence de publication 12 Exemple 12 Annexes 13 1. Types de scrutins 13 Page 1 sur 14 original.docx Dernière mise à jour : 04 juillet 2023
Projet Votelec API interne JSON pour la cartographie 04 juillet 2023 2. Domaine d’influence 13 3. Type de question dans les votations........................................................................................13 4. Résultat final d’un scrutin........................................................................................................14 Page 2 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

Introduction

API interne JSON pour la cartographie

04 juillet 2023

Ce document décrit la structure de l’API interne JSON utilisée par la cartographie de Votelec. Il a été conçu afin que les données des résultats publiés par le canton de Vaud puissent être utilisées facilement par d’autres personnes (notamment des journalistes de données).

Avertissements

Les fichiers JSON décrits dans ce document n’ont pas pour vocation de faire partie d’une API publique. La documentation ci-dessous est donc principalement une description de ce que ces fichiers représentent dans la réalité et non une documentation technique. De ce fait, la structure de ces fichiers est susceptible d’être modifiés sans préavis, ni versioning. Néanmoins, les éléments principaux ne changent quasiment pas.

Structure des URLs

Template de base : https://www.elections.vd.ch/votelec/<version de l’application>/data/<identification du scrutin/de l’échéance>/<nom du fichier>

Version de l’application : « appX », ou X est la version de l’application de cartographie utilisée lors de la publication.

Exemple : « app18 » pour les résultats de la votation fédérale du 25 septembre 2022.

Identification du scrutin/de l’échéance : La dénomination du scrutin se fait par concaténation de la dénomination courte du type de scrutin (voir Types de scrutins), et de la date d’échéance du scrutin désiré au format année/mois/date, le tout sans séparation.

Exemple : Pour la votation fédérale du 25 septembre 2022 : CHVO20220925

Cas particulier : dans le cas du fichier « echeance.json », il est inutile de préciser le type de scrutin (voir première URL d’exemple ci-dessous).

Nom du fichier : Nom du fichier JSON désiré. (Voir liste dans Structure des fichiers)

Exemple d’URLs complètes :

 https://www.elections.vd.ch/votelec/app18/data/20220925/echeance.json

 https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/scrutin.json

 https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/countingStatus.json

 https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/results.json

 https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/vd_geo_data.json

Page 3 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie

04 juillet 2023

Fréquence de mise à jour

Les fichiers sont mis à jour toutes les 5 minutes durant le dépouillement, à partir de midi. Les fichiers ne sont pas mis à jour s’il n’y a pas eu de modifications ou de nouvelles données. Il peut arriver que la publication des fichiers prenne un peu plus de temps, notamment durant les grandes échéances électorales. Dans ce cas, la mise à jour peut arriver dans les minutes qui suivent.

Structure des fichiers

Les données des résultats de la cartographie de Votelec se composent des 4 fichiers suivants :

- echeance.json : données relatives à l’échéance électorales.

- scrutin.json : données de définition d’un scrutin.

- countingStatus.json : données d’avancement du dépouillement des bureaux.

- results.json : résultats des votations/élections.

- vd_geo_data.json : données utilisées pour la créer la carte.

Note : Dans le cas où seuls les définitions et les résultats des scrutins vous intéressent, le contenu des fichiers « scrutin.json » et « results.json » devrait vous suffire.

Fichiers

1. scrutin.json

Description

Ce fichier contient les détails d’un scrutin particulier. Il définit tous les éléments nécessaires à la définition de ce dernier, à savoir les objets de vote pour les votations ou la liste des participants dans le cas d’une élection.

Projet Votelec
Page 4 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

Contenu

a. Racine

API interne JSON pour la cartographie

04 juillet 2023

Clé Description

technicalKey Usage interne

date

Timestamp du jour du scrutin à minuit. (Attention : heure GMT +2)

niveauLegal Domaine d’influence du scrutin. Les 3 niveaux supportés par Votelec sont : fédéral (FEDERAL), cantonal (CANTONAL) et communal (COMMUNAL).

scrutinType Définit s’il s’agit d’une élection (ELECTION), ou d’une votation (VOTATION) objects Tableau des différentes votations du scrutin. Chaque objet représente une votation et contient les détails de ce dernier. (voir Objets de votations)

Vide pour une élection. superElection Informations communes à tous les scrutins du même type pour une même échéance, dont le type (voir Types de scrutins dans les annexes) et le tour. Valeurs possibles pour le tour : premier tour (FIRST), second tour (SECOND) et « NOT_APPLICABLE » pour les scrutins à un seul tour.

elections

Vide pour les votations.

Contient la liste des élections prévues lors de ce scrutin. Ces dernières sont triées par code OFS dans le cas d’une élection communale ou par le préfixe « VD » dans le cas d’une élection de niveau cantonal ou fédéral.

Vide pour les votations.

detailedScrutinType Code de type de scrutin (voir Types de scrutins dans les annexes) config Configurations et d’informations sur le scrutin. (Principalement utilisées pour la logique d’affichage.). Usage interne.

b. Objets de votations

Clé Description title

Titre de l’objet tel que présenté dans les documents officiels shortName Dénomination courte de l’objet pour référence objectType Le type de votation : La votation simple (VOTATION_SIMPLE), la votation complexe (VOTATION_COMPLEXE), et la votation à choix multiple (VOTATION_CHOIX).

questions Liste des questions de la votation. Son contenu diffère en fonction du type de contenu. Il contient soit la question d’une votation simple, soit les énoncés de l’initiative et de son contre-projet dans le cadre d’une votation complexe, ou encore les choix A et B de la votation par choix. (voir Type de question dans les votations)

c. Elections

Clé Description

seats

Nombre de sièges à pourvoir electionLists Liste des groupes électoraux concernés par l’élection. (voir Liste électorale) candidates Liste des candidats concernés par l’élection. (voir Candidat)

additionalProperties Usage interne

Page 5 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

API interne JSON pour la cartographie

04 juillet 2023

d. Liste électorale

Clé Description

id Usage interne

shortName Dénomination courte du groupe politique (ex. UDC)

longName Nom complet du groupe politique (ex. Union Démocratique du Centre)

groupId Identifiant du groupe de liste. Un groupe de liste permet de regrouper plusieurs listes qui représentent le même parti politique. Ceci est utilisé pour regrouper les listes dans la vue « hémicycle ». hemicycleOrder L’ordre relatif dans la vue « hémicycle ». Usage interne.

e. Candidat

Clé Description

id Usage interne

fullName Nom légal du candidat lists Liste des identifiants de listes dans lesquels le candidat apparaît Fréquence de publication

Lors de la préparation du scrutin uniquement. Ce fichier n’est mis à jour que rarement, si la définition du scrutin ou d’autres scrutin de l’échéance changeait.

Exemple

Votation : https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/scrutin.json

Élection : https://www.elections.vd.ch/votelec/app16/data/VDGC20220320/scrutin.json

Page 6 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie

04 juillet 2023

2. results.json

Description

Contient les résultats détaillés des scrutins de l’échéance. Pour les élections, contient également les répartitions entre listes électorales et candidats.

Contenu

a. Racine Clé Description generated Usage interne publishStatus Toujours « PUBLIC ». Contenu invalide si différent. countingStatus État du décompte général (pour l’échéance). Tant qu’aucune donnée de résultat n’a été publié, vaut « NO_RESULT », puis lorsque les décomptes commencent, passe à « COUNTING ». Une fois tous les scrutins finalisés, passe à « COMPLETED ». Les résultats doivent être considérés comme incomplet tant que le statut n’est pas « COMPLETED ». counting Ratio de décompte. De 0 à 1, ou 0 correspond à aucun bulletin décompté (statut « NO_RESULT ») et 1 la fin du comptage (statut « COMPLETED »).

Ratio= nombre d ’ électeurs des communes qui ont terminé leur dépouillement nombre total des électeurs inscrits objects Liste des objets de votation du scrutin. Les données se trouvent sous « questions » et sont listées par type de votation. (Voir Type de question dans les votations) election Détails des résultats de l’élection

b. Question

Clé Description colors Usage interne participationColors Usage interne ofs Liste des résultats par portées (communes & districts). Triée par code OFS. (voir Détails des résultats de votation).

c. Détails des résultats de votation Clé Description outcome Résultat final de l’objet. (voir Résultat final d’un scrutin) general Bloc contenant des compteurs généraux :

 inscrits : Nombre d’électeurs inscrits

 rentres : Nombre de bulletins rentrés

 blancs : Nombre de bulletins blancs

 nuls : Nombre de bulletins nuls

 valables : Nombre de bulletins valables (les bulletins blancs sont considérés comme valables dans la plupart des élections majoritaires)

oui Nombre de voix pour le oui (ou pour le choix A, dans le cas d’une votation par choix)

non Nombre de voix pour le non (ou pour le choix B, dans le cas d’une votation par choix)

sansReponse Nombre de voix sans réponse dans le cas d’une votation complexe.

Projet Votelec
Page 7 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

API interne JSON pour la cartographie

04 juillet 2023

d. Élection

Clé Description colors Usage interne

votes

Liste des résultats par portées (communes & districts). Triée par code OFS. (voir Détails des résultats de l’élection).

e. Détails des résultats de l’élection

Clé Description general

Bloc contenant le nombre de voix :

 inscrits : Nombre d’électeurs inscrits

 rentres : Nombre de bulletins rentrés

 blancs : Nombre de bulletins blancs

 nuls : Nombre de bulletins nuls

 valables : Nombre de bulletins valables (les bulletins blancs sont considérés comme valables dans la plupart des élections majoritaires)

listes Liste des résultats des listes électorales triés par numéro de listes.

Contient :

 votes : le nombre de bulletin ayant donné au moins un suffrage à un candidat de la liste.

 suffrages : le nombre de voix données aux candidats de la liste.

 seats : le nombre de sièges remportés par la liste candidats Liste des résultats des candidats triés par numéro de candidat officiel.

Contient :

 votes : Nombre de suffrages accordés au candidat

 outcome : Résultat final du scrutin pour ce candidat (voir Résultat final d’un scrutin)

 rank : le rang, utilisé pour distinguer les cas à égalité après tirage au sort resultsDone « true » si le décompte des voix est terminé, sinon « false ».

Fréquence de publication

Toutes les 5 minutes durant le dépouillement à partir de midi.

Exemple

Votation :

https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/results.json

https://www.elections.vd.ch/votelec/app18/index.html?

id=CHVO20220925#v=participation&o=1&m=moreDetails

Election :

https://www.elections.vd.ch/votelec/app16/data/VDGC20220320/results.json

https://www.elections.vd.ch/votelec/app16/index.html?

id=VDGC20220320#v=hemicycle&m=moreDetails&ad=2225

Page 8 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie 04 juillet 2023

3. countingStatus.json

Description

Ce fichier sert à transmettre l’état du dépouillement des bulletins. Il contient entre autres la liste des communes ayant finalisé leur procédure de dépouillement, et l’état de celles en train de l’effectuer.

Contenu

a. Racine

Clé Description

kind

countingStatus

Type de décompte. Vaut « default » dans le cadre d’un décompte classique, ou « gc » s’il s’agit d’une élection du grand conseil. La structure diffère selon l’un ou l’autre.

L’état du décompte au niveau du canton (voir Statut des décomptes).

lastValidCommunePVs (Décompte classique uniquement) Liste des 10 dernières communes (voir Commune) à avoir finalisé leur décompte.

invalidBureauPVs (Décompte classique uniquement) Liste des bureaux (voir Bureau) n’ayant pas encore finalisé leur décompte.

validBureauPVs (Décompte classique uniquement) Liste des bureaux (voir Bureau) ayant fini leur décompte.

countingStatusByDistrictId (Grand conseil uniquement) Liste des décomptes des différents arrondissements et sous-arrondissements (voir Statut des décomptes) listé par code OFS (les sous-arrondissements n’ayant pas de code OFS, ils utilisent un identifiant choisi arbitrairement).

b. Statut des décomptes

Clé Description rows Liste des décomptes (voir Décompte) se situant au niveau inférieur. S’il s’agit de l’état du canton, les décomptes des arrondissements seront listés ; dans le cas d’un arrondissement, les communes seront listées… total Total des statuts des décomptes listés dans le champ rows. (Voir Décompte)

c. Bureau

Clé Description commune Code OFS la commune à laquelle appartient ce bureau de vote. bureau Nom du bureau de vote. validation Date à laquelle le procès-verbal a été finalisé et validé au niveau du bureau.

d. Commune

Clé Description id Code OFS de la commune name Nom de la commune validation Date à laquelle le procès-verbal a été finalisé et validé au niveau de la commune.

Projet Votelec
Page 9 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie

04 juillet 2023

e. Décompte

Clé Description

id (Absent s’il s’agit d’un total) Code OFS de la portée (district ou commune) name (Absent s’il s’agit d’un total) Nom de la portée (district ou commune) counting Nombre de bureaux en cours de décompte done

existing

Nombre de bureaux ayant fini le décompte

Total des bureaux

Fréquence de publication

Toutes les 5 minutes durant le dépouillement à partir de midi.

Exemple

https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/countingStatus.json

https://www.elections.vd.ch/votelec/app18/index.html?

id=CHVO20220925#v=participation&m=countingState

Projet Votelec
Page 10 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

4. echeance.json

Description

API interne JSON pour la cartographie

04 juillet 2023

Décrit les informations de l’échéance ainsi que la liste des scrutins organisés le jour en question. Contenu

a. Racine

Clé Description scrutins Liste de scrutins (Voir Scrutin) technicalKey Usage interne date Date du jour de l’échéance. (Format « année-mois-jour », ex. 2022-03-20)

b. Scrutin

Clé Description id Usage interne title Nom du scrutin

type Code de type de scrutin (voir Types de scrutins dans les annexes) order Ordre d’affichage

Fréquence de publication

Toutes les 5 minutes durant le dépouillement à partir de midi. En général, ce fichier n’est pas modifié.

Exemple

https://www.elections.vd.ch/votelec/app16/data/20220320/echeance.json

Page 11 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie 04 juillet 2023

5. vd_geo_data.json

Description

Fichier contenant les données pour afficher la carte du canton. Ce fichier contient principalement des données techniques uniquement utilisées par l’application Votelec. Le format GeoJson est utilisé. À noter que ce fichier peut être différent selon le type de scrutin et l’état des fusions de commune à l’échéance en cours.

Contenu

a. Racine

Clé Description type

districts

Usage interne

Listes des districts du canton de Vaud au format GeoJson. Les informations se trouvent sous « features[*]properties » (voir Property). L’élément

« features.type » est à usage interne. cities Listes des communes du canton de Vaud au format GeoJson. Les informations se trouvent sous « features[*]properties » (voir Property). L’élément « features.type » est à usage interne. lakes Liste des lacs du canton de Vaud au format GeoJson. Les informations se trouvent sous « features[*]properties » (voir Property). L’élément

« features.type » est à usage interne.

technicalKey Usage interne

b. Property

Clé Description

name

Nom du district, de la commune ou du lac id Code OFS de l’élément districtId (Communes uniquement) Code OFS du district parent. label (Districts uniquement) Informations de cartographie. Usage interne. labelX (Districts uniquement) Informations de cartographie. Usage interne. labelY (Districts uniquement) Informations de cartographie. Usage interne. portee Code du niveau du domaine d’influence (voir Domaine d’influence dans les annexes)

Fréquence de publication

Lors de la préparation du scrutin uniquement. Ce fichier n’est mis à jour qu’en circonstances exceptionnelles.

Exemple

https://www.elections.vd.ch/votelec/app18/data/CHVO20220925/vd_geo_data.json

Projet Votelec
Page 12 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

API interne JSON pour la cartographie

04 juillet 2023

Annexes

1. Types de scrutins

Identifiant

VOTATION_FEDERALE

VOTATION_CANTONALE

VOTATION_COMMUNALE

ELECTION_CONSEIL_NATIONAL

ELECTION_CONSEIL_DES_ETATS

ELECTION_CONSEIL_D_ETAT

ELECTION_GRAND_CONSEIL

ELECTION_CONSEIL_COMMUNAL_RP

ELECTION_MUNICIPALITE

ELECTION_SYNDIC

ELECTION_CONSEIL_COMMUNAL_SUPPLEANTS

ELECTION_CONSEIL_COMMUNAL_MAJ

2. Domaine d’influence

Description

Dénom. courte

Votation fédérale CHVO

Votation cantonale VDVO

Votation communale COVO

Election au Conseil national CHCN

Election au Conseil des Etats CHCE

Election du Conseil d'Etat VDCE

Election du Grand Conseil VDGC

Election du Conseil communal CORP

Election communale-Municipalité COMU

Election communale-Syndic COSY

Election communale de suppléants au Conseil communal COSU

Election communale-Conseil Communal MAJ COMA

Circonscription (zone, territoire en règle générale géographiquement cohérente) dans laquelle s’applique le droit de vote ainsi que le droit d’élire actif et passif d’une personne.

Clé Description COM

Niveau communal

SARR Niveau du sous-arrondissement

ARR Niveau de l’arrondissement

FOREIGN Code spécial permettant de mettre en évidence les Suisses du canton de Vaud vivant à l’étranger.

3. Type de question dans les votations

Clé Description question

Les questions sont utilisées pour les votations simples (réponse oui / non) ainsi que pour les votations par choix (A / B).

Note : le type de question « choix » n’a pour l’instant jamais été utilisé, mais il est prévu par la loi.

initiative Utilisé lors de votation complexe. Question comptabilisant le nombre de oui / non sur l’acceptation de l’initiative.

contre-projet Utilisé lors de votation complexe. Question comptabilisant le nombre de oui / non sur l’acceptation du contre-projet.

preference Utilisé lors de votation complexe. Question comptabilisant la préférence des électeurs pour l’initiative ou le contre-projet.

Projet Votelec
Page 13 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Projet Votelec

API interne JSON pour la cartographie

04 juillet 2023

4. Résultat final d’un scrutin

Clé Description

UNAVAILABLE Résultat indisponible (décompte des voix incomplet)

ACCEPTED Object de la votation simple accepté

REJECTED Object de la votation simple refusé

INITIATIVE Initiative de la votation complexe accepté

CONTRE_PROJET Contre-projet de la votation complexe accepté

EGALITE Égalité entre :

 Les oui et les non de la votation simple

 Les choix A et B de la votation par choix

 L’initiative et le contre-projet de la votation complexe

CHOIX_A Choix A de la votation par choix accepté

CHOIX_B Choix A de la votation par choix accepté

ELU Candidat élu

NON_ELU Candidat non-élu

Page 14 sur 14 original.docx Dernière mise à jour : 04 juillet 2023

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.