Intro

The FSO is responsible for publishing the official provisional elections results of the federal elections. This documentation focuses on the dataset Federal elections 2023 which contains the continuously updated result files on Election Sunday, October 22, 2023.

Testing: For testing purposes, a dataset exists on the DEV environment of opendata.swiss. Test data will be uploaded there several times until election Sunday. More information will follow in the associated data description (please subscribe to the dataset to receive update notifications).
DEV-environment: https://ogdch-abnahme.clients.liip.ch/de/dataset/eidg-wahlen-2023


Example data

Currently, 3 provisional test data sets with dummy results from the 2019 elections (National Council) are available. Description and test data for the Council of States will follow.
(Go to “View Raw” for download )

Note: Status of test data : June 2023 (outdated). Please refer to the changelog for the latest changes: https://bfspoku.github.io/wd-poku/Changelog_Eidgwahlen2023.html

  1. Empty files. Structure of the files before election day.
    https://github.com/bfspoku/wd-poku/blob/ce1f3f26371e947d8ce94abd95a45112d6f1c249/docs/files/Testdata1.zip

  2. Structure of the files during election day (with partial results).

    • Canton LU complete & confirmed
    • Canton BL intermediate status: 28/86 municipalities completed
    • remaining cantons empty

    https://github.com/bfspoku/wd-poku/blob/ce1f3f26371e947d8ce94abd95a45112d6f1c249/docs/files/Testdata2.zip

  3. Structure of the files after the election has been completed.
    https://github.com/bfspoku/wd-poku/blob/ce1f3f26371e947d8ce94abd95a45112d6f1c249/docs/files/Testdata3.zip



NEW: JSON Listen-gde

(Listes/Liste/Lists)

20230926: New JSON with list results at municipality level. Update interval: continuously.
(Unlike the other files, the file is not offered with an empty structure. Before 12.00 noon on election day, the file will be completely empty (0KB). )

Please read the following description.


Content description for the file: sd-t-17.02-NRW2023-listen-gde.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
level_gemeinden level_gemeinden: continuous update interval with the already completed municipalities (depending on the canton); Important: For performance reasons, the empty file does NOT contain the full file structure.
kanton_nummer integer FSO canton number
kanton_bezeichnung string Canton name
gemeinde_nummer integer FSO municipality number Attention: In the case of election results, special cases at the municipal level must be taken into account. Due to shared ballot boxes, no result can be shown for elections in a few municipalities. Some cantons have a separate municipality number for their Swiss abroad. The number/Id of these special municipalities will be composed as follows: Ex. Canton AI: 19160 (<prefix 19><FSO canton number, 2 digits><suffix 0>)
gemeinde_bezeichnung string Municipality name
liste_nummer_bfs integer FSO list number (numeric))
liste_nummer_kanton string Official list number given by canton (alphanumeric)
partei_id integer FSO party number see metadaten.json
stimmen_liste integer Number of total votes per list; level: municipality


JSON Wahlbeteiligung

(Participation/Partecipazione/Turnout)


Content description for the file: sd-t-17.02-NRW2023-wahlbeteiligung.json
Node Variable Type Description Comments
timestamp datetime Date and Time of data creation
wahljahr integer Year of the election
spatial_reference datestring Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delievered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delievered and confirmed their provisional final result
gemeinden_total integer Total number of municipalities The number of municipalities does not necessarily correspond to the number in the Swiss official commune register. Deviations include municipalities that do not have their own ballot box. In addition, some cantons maintain fictitious separate municipalities for the Swiss living abroad.
gemeinden_abgeschlossen integer Number of municipalities with a result
Stand_kantone
kanton_nummer integer [1-26] FSO canton number
kanton_abgeschlossen boolean Indicates that the canton has delievered and confirmed its provisional final result (boolean true/false)
gemeinden_total integer Total number of municipalities (within the canton)
gemeinden_abgeschlossen integer Number of municipalities (within the canton) with a result
level_ch level_ch: Will be filled as soon as the election is completed.
wahlberechtigte integer numeric of eligible voters; level: CH
eingelegte_wahlzettel integer numeric of received ballots; level: CH
leere_wahlzettel integer numeric of empty ballots; level: CH
ungueltige_wahlzettel integer numeric of invalid ballots; level: CH
gueltige_wahlzettel integer numeric of valid ballots; level: CH
wahlbeteiligung numeric Voter turnout (in percent); level: CH
letzte_wahl_wahlbeteiligung numeric Voter turnout of last election (in percent); level: CH
differenz_wahlbeteiligung numeric Difference between current voter turnout and turnout in the last election (in percentage points); level: CH
level_kantone level_kantone: Update interval per completed canton
kanton_nummer integer [1-26] FSO canton number
kanton_bezeichnung string Canton name
wahlberechtigte integer numeric of eligible voters; level: canton
eingelegte_wahlzettel integer numeric of received ballots; level: canton
leere_wahlzettel integer numeric of empty ballots; level: canton
ungueltige_wahlzettel integer numeric of invalid ballots; level: canton
gueltige_wahlzettel integer numeric of valid ballots; level: canton
wahlbeteiligung numeric Voter turnout (in percent); level: canton
letzte_wahl_wahlbeteiligung numeric Voter turnout of last election (in percent); level: canton
differenz_wahlbeteiligung numeric Difference in voter turnout between the current election and the past election (in percentage points); level: canton
level_gemeinden level_gemeinden: continuous update interval with the already completed municipalities (depending on the canton). Empty file already contains complete file structure.
gemeinde_nummer integer FSO municipality number Attention: In the case of election results, special cases at the municipal level must be taken into account. Due to shared ballot boxes, no result can be shown for elections in a few municipalities. Some cantons have a separate municipality number for their Swiss abroad. The number/Id of these special municipalities will be composed as follows: Ex. Canton AI: 19160 (<prefix 19><FSO canton number, 2 digits><suffix 0>)
gemeinde_bezeichnung string Municipality name
kanton_nummer integer [1-26] FSO canton number
wahlberechtigte integer numeric of eligible voters; level: municipality
eingelegte_wahlzettel integer numeric of received ballots; level: municipality
leere_wahlzettel integer numeric of empty ballots; level: municipality
ungueltige_wahlzettel integer numeric of invalid ballots; level: municipality
gueltige_wahlzettel integer numeric of valid ballots; level: municipality
wahlbeteiligung numeric Voter turnout / voter participation (in percent); level: municipality
letzte_wahl_wahlbeteiligung numeric Voter turnout of last election (in percent); level: municipality
differenz_wahlbeteiligung numeric Difference in voter turnout between the current election and the past election (in percentage points); level: municipality


JSON Kandidierende

(Candidats/Candidati/Candidates)


Content description for the file: sd-t-17.02-NRW2023-kandidierende.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
wahljahr integer Year of the election
spatial_reference Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delivered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delivered and confirmed their provisional final result
gemeinden_total integer Total number of municipalities
gemeinden_abgeschlossen integer Number of municipalities with a result
Stand_kantone
kanton_nummer integer [1-26] FSO canton number
kanton_abgeschlossen boolean Indicates that the canton has delivered and confirmed its provisional final result (boolean true/false)
gemeinden_total integer Total number of municipalities (within the canton) The number of municipalities does not necessarily correspond to the number in the Swiss official commune register. Deviations include municipalities that do not have their own ballot box. In addition, some cantons maintain fictitious separate municipalities for the Swiss living abroad.
gemeinden_abgeschlossen integer Number of municipalities (within the canton) with a result
level_kantone level_kantone: Update interval per completed canton
kanton_nummer integer FSO canton number
kanton_bezeichnung string Canton name
liste_nummer_bfs integer FSO list number (numeric)
liste_nummer_kanton string Official list number given by canton (alphanumeric)
liste_bezeichnung string Name of the list
kandidat_nummer integer Candidate number
kandidat_listenplatz_1 integer Position of candidate on list
kandidat_listenplatz_2 integer Position 2 of candidate on list (only applicable when pre-cumulated)
name string Family name of candidate
vorname string First name of candidate
geschlecht string Sex of candidate F=female, M=male
geburtsdatum date Date of birth of candidate
geburtsjahr integer Year of birth of candidate
wohnort_gemeinde_nummer integer FSO municipality number of place of residence of candidate The number (ID) is only supplied after the periods allowed for rectifications in all cantons have expired. The municipality number is added on the basis of address data by the FSO. For candidates living abroad, 9950 is assigned as municipality number
wohnort string Place of residence of candidate Indication by candidate when registering candidacy.
beruf string Occupation of candidate Self-declaration by candidates.
kandidat_status_id integer 2= incumbent; else value=‘null’ see metadaten.json; The value =3 (ehemalig/ancien/ne élu/e/già eletto/a in passato/former) can no longer be supplied for 2023. The structure of the variable is retained.
kandidat_partei_id integer FSO party number see metadaten.json
stimmen_kandidat integer Number of candidate votes; level: canton
flag_gewaehlt boolean Indicates elected and non elected candidates (boolean true/false) Critical variable: set only after the canton is confirmed.
level_gemeinden level_gemeinden: Update interval per completed canton; Important: For performance reasons, no empty file structure at municipality level. The variables on the “level_gemeinden” level are then filled on election day on a canton-by-canton basis.
kanton_nummer integer [1-26] FSO canton number
gemeinde_nummer integer FSO municipality number Attention: In the case of election results, special cases at the municipal level must be taken into account. Due to shared ballot boxes, no result can be shown for elections in a few municipalities. Some cantons have a separate municipality number for their Swiss abroad. The number/Id of these special municipalities will be composed as follows: Ex. Canton AI: 19160 (<prefix 19><FSO canton number, 2 digits><suffix 0>)
gemeinde_bezeichnung string Municipality name
liste_nummer_bfs integer FSO list number (numeric))
liste_nummer_kanton string Official list number given by canton (alphanumeric)
kandidat_nummer integer Candidate number
name string First name of candidate
vorname string Family name of candidate
kandidat_partei_id integer FSO party number see metadaten.json
stimmen_kandidat integer Number of candidate votes; level: canton
flag_gewaehlt boolean Indicates elected and non elected candidates (boolean 1/0) Critical variable: set only after the canton is confirmed.


JSON Parteien

(Partis/Partiti/Parties)


Content description for the file: sd-t-17.02-NRW2023-parteien.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
wahljahr integer Year of the election
spatial_reference Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delievered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delievered and confirmed their provisional final result
gemeinden_total integer Total number of municipalities The number of municipalities does not necessarily correspond to the number in the Swiss official commune register. Deviations include municipalities that do not have their own ballot box. In addition, some cantons maintain fictitious separate municipalities for the Swiss living abroad.
gemeinden_abgeschlossen integer Number of municipalities with a result
kanton_nummer integer [1-26] FSO canton number
Stand_kantone
kanton_abgeschlossen boolean Indicates that the canton has delievered and confirmed its provisional final result (boolean true/false)
gemeinden_total integer Total number of municipalities (within the canton)
gemeinden_abgeschlossen integer Number of municipalities (within the canton) with a result
level_ch level_ch: Will be filled as soon as the election is completed.; The file also includes parties that contested the previous election but are no longer contesting the current election. This is to make it as easy as possible to display all changes in the party results. Consequently, however, it is also possible that parties are listed that are not running in the current election.
partei_id integer FSO party number see metadaten.json
anzahl_listen integer number of lists; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende integer number of candidates; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende_f integer number of female candidates; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende_m integer number of male candidates; level: CH Only for cantons with proportional representation system.
anzahl_gewaehlte integer number of elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer number of female elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer number of male elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
letzte_wahl_anzahl_gewaehlte integer number of elected candidates last election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
letzte_wahl_anzahl_gewaehlte_f integer number of elected female candidates last election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
letzte_wahl_anzahl_gewaehlte_m integer number of elected male candidates last election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte integer Difference in the number of candidates elected between the current election and the previous election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte_f integer Difference in the number of female candidates elected between the current election and the previous election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte_m integer Difference in the number of male candidates elected between the current election and the previous election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
fiktive_waehlende numeric number of “fictional voters” (Concept for calculating party strengths across different electoral constituencies); level: CH
letzte_wahl_fiktive_waehlende numeric number of “fictional voters” previous election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_fiktive_waehlende numeric Difference in the number of “fictional voters” between the current election and the previous election; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_staerke numeric Party strength in percent; level: CH
letzte_wahl_partei_staerke numeric Party strength previous national election in percent; level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_partei_staerke numeric Difference in party strength between current and previous election (in percentage points); level: CH In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_rang integer Rank of the party based on its party strength; level: CH
flag_staerkste_partei boolean Indicates the strongest party (boolean 1/0); level: CH
level_kantone level_kantone: Update interval per completed canton; The file also includes parties that contested the previous election but are no longer contesting the current election. This is to make it as easy as possible to display all changes in the party results. Consequently, however, it is also possible that parties are listed that are not running in the current election.
kanton_nummer integer [1-26] FSO canton number
kanton_bezeichnung string Canton name
partei_id integer FSO party number see metadaten.json; Attention: also included are parties that contested only the previous election, but not the current election.
anzahl_listen integer number of lists; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende integer number of candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_f integer number of female candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_m integer number of male candidates; level: canton Only for cantons with proportional representation system.
anzahl_gewaehlte integer number of elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer number of female elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer number of male elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
letzte_wahl_anzahl_gewaehlte integer number of elected candidates last election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
letzte_wahl_anzahl_gewaehlte_f integer number of elected female candidates last election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
letzte_wahl_anzahl_gewaehlte_m integer number of elected male candidates last election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte integer Difference in the number of candidates elected between the current election and the previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte_f integer Difference in the number of female candidates elected between the current election and the previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_anzahl_gewaehlte_m integer Difference in the number of male candidates elected between the current election and the previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
fiktive_waehlende integer number of “fictional voters” (Concept for calculating party strengths across different electoral constituencies); level: canton
letzte_wahl_fiktive_waehlende integer number of “fictional voters” previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_fiktive_waehlende integer Difference in the number of “fictional voters” between the current election and the previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
stimmen_partei integer Total of party votes; level: canton
letzte_wahl_stimmen_partei integer Total of party votes previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_stimmen_partei integer Difference in party votes between current and previous election; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_staerke numeric Party strength in percent; level: canton
letzte_wahl_partei_staerke numeric Party strength previous national election in percent; level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_partei_staerke numeric Difference in party strength between current and previous election (in percentage points); level: canton In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_rang numeric Rank of the party based on its party strength; level: canton
flag_staerkste_partei boolean Indicates the strongest party (boolean 1/0); level: canton
level_gemeinden level_gemeinden: continuous update interval with the already completed municipalities (depending on the canton). Empty file already contains complete file structure.; The file also includes parties that contested the previous election but are no longer contesting the current election. This is to make it as easy as possible to display all changes in the party results. Consequently, however, it is also possible that parties are listed that are not running in the current election.
gemeinde_nummer integer FSO municipality number Attention: In the case of election results, special cases at the municipal level must be taken into account. Due to shared ballot boxes, no result can be shown for elections in a few municipalities. Some cantons have a separate municipality number for their Swiss abroad. The number/Id of these special municipalities will be composed as follows: Ex. Canton AI: 19160 (<prefix 19><FSO canton number, 2 digits><suffix 0>)
gemeinde_bezeichnung string Municipality name
kanton_nummer integer [1-26] FSO canton number
partei_id integer FSO party number see metadaten.json
stimmen_partei integer Total of party votes; level: municipality
letzte_wahl_stimmen_partei integer Total of party votes previous election; level: municipality In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_stimmen_partei integer Difference in party votes between current and previous election; level: municipality In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_staerke numeric Party strength in percent; level: municipality
letzte_wahl_partei_staerke numeric Party strength previous national election in percent; level: municipality In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
differenz_partei_staerke numeric Difference in party strength between current and previous election (in percentage points); level: municipality In 2021 the CVP (partei_id = 2) merged with the BDP (partei_id = 34) under the name “Die Mitte” / “Centre”. For the direct comparison of the election years 2023 and 2019, the party results of CVP and BDP are combined for 2019 and shown as results for the Centre party (partei_id = 34).
partei_rang integer Rank of party; level: municipality
flag_staerkste_partei boolean Indicates the strongest party (boolean 1/0); level: municipality


JSON Listen

(Listes/Liste/Lists)


Content description for the file: sd-t-17.02-NRW2023-listen.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
wahljahr integer Year of the election
spatial_reference Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delievered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delievered and confirmed their provisional final result
Stand_kantone
kanton_nummer integer [1-26] FSO canton number
kanton_abgeschlossen boolean Indicates that the canton has delievered and confirmed its provisional final result (boolean true/false)
level_kantone level_kantone: Update interval per completed canton
kanton_nummer integer FSO canton number
kanton_bezeichnung string Canton name
liste_nummer_bfs integer FSO list number (numeric))
liste_nummer_kanton string Official list number given by canton (alphanumeric)
liste_bezeichnung string Name of the list
liste_verbindung string Indicates list combination (list union) see metadaten.json
liste_unterlistenverbindung string Indicates list sub-combination see metadaten.json
partei_id integer FSO party number see metadaten.json
anzahl_gewaehlte integer Number of elected candidates per list; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
stimmen_liste integer Number of total votes per list; level: canton
listen_staerke number Strength of the list in percent; level: canton


JSON Zeitreihen-frauen-beteiligung

(Séries temporelles participation-femmes/Serie temporale partecipazione-donne/Time series participation-women)


Content description for the file: sd-t-17.02-NRW2023-zeitreihen-frauen-beteiligung.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
spatial_reference Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delievered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delievered and confirmed their provisional final result
level_ch level_ch: Will be filled as soon as the election is completed
wahljahr integer Year of the election
wahlbeteiligung number Voter turnout / voter participation (in percent); level: CH
frauen_anteil number Proportion of women (in percent); level: CH
anzahl_listen integer Number of lists; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende integer Number of candidates; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende_f integer Number of female candidates; level: CH Only for cantons with proportional representation system.
anzahl_kandidierende_m integer Number of male candidates; level: CH Only for cantons with proportional representation system.
anzahl_gewaehlte integer Number of elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer Number of female elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer Number of male elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
level_kantone level_kantone: Update interval per completed canton
kanton_nummer integer [1-26] FSO canton number
kanton_bezeichnung_kurz string Canton name short
wahljahr integer Year of the election
wahlbeteiligung number Voter turnout / voter participation (in percent); level: canton
frauen_anteil number Proportion of women (in percent); level: canton
anzahl_listen integer Number of lists; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende integer Number of candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_f integer Number of female candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_m integer Number of male candidates; level: canton Only for cantons with proportional representation system.
anzahl_gewaehlte integer Number of elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer Number of female elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer Number of male elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.


JSON Zeitreihen-parteien

(Séries temporelles partis/Serie temporale parti/Time series parties)


Content description for the file: sd-t-17.02-NRW2023-zeitreihen-parteien.json
Node Variable Type Description Comments
timestamp Date and Time of data creation
spatial_reference Status of cantons and municipalities Date of the used geo-reference status.
stand
wahl_abgeschlossen boolean Indicates that all cantons have delievered and confirmed their provisional final result (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delievered and confirmed their provisional final result
level_ch level_ch: Will be filled as soon as the election is completed
wahljahr integer Year of the election
partei_id integer FSO party number see metadaten.json
anzahl_listen integer Number of lists; level: CH Only for cantons with proportional representation system.; The party LPS/PLS (FSO party number=5) was assigned to that of FDP/PLR (FSO party number=1) for level_ch for all data years.
anzahl_kandidierende integer Number of candidates; level: CH Only for cantons with proportional representation system.; The party LPS/PLS (FSO party number=5) was assigned to that of FDP/PLR (FSO party number=1) for level_ch for all data years.
anzahl_kandidierende_f integer Number of female candidates; level: CH Only for cantons with proportional representation system.; The party LPS/PLS (FSO party number=5) was assigned to that of FDP/PLR (FSO party number=1) for level_ch for all data years.
anzahl_kandidierende_m integer Number of male candidates; level: CH Only for cantons with proportional representation system.; The party LPS/PLS (FSO party number=5) was assigned to that of FDP/PLR (FSO party number=1) for level_ch for all data years.
partei_staerke number Party strength in percent; level: CH
anzahl_gewaehlte integer Number of elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer Number of female elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer Number of male elected candidates; level: CH Update 20230821: not considered as critical variable. Will be supplied normally.
frauen_anteil number Proportion of women (in percent); level: CH
flag_staerkste_partei boolean Indicates the strongest party (boolean 1/0); level: CH
level_kantone level_kantone: Update interval per completed canton
kanton_nummer integer [1-26] FSO canton number
kanton_bezeichnung string Canton name
wahljahr integer Year of the election
partei_id integer FSO party number see metadaten.json
anzahl_listen integer Number of lists; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende integer Number of candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_f integer Number of female candidates; level: canton Only for cantons with proportional representation system.
anzahl_kandidierende_m integer Number of male candidates; level: canton Only for cantons with proportional representation system.
partei_staerke number Party strength in percent; level: canton
anzahl_gewaehlte integer Number of elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_f integer Number of female elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
anzahl_gewaehlte_m integer Number of male elected candidates; level: canton Update 20230821: not considered as critical variable. Will be supplied normally.
frauen_anteil number Proportion of women (in percent); level: canton
flag_staerkste_partei boolean Indicates the strongest party (boolean 1/0); level: canton


JSON SR - Kandidierende

(CE - Candidats/CS - Candidati)


Results of the elections to the Council of States are provided in the following formats:

  • sd-t-17.02-SRW2023-kandidierende_erster-wahlgang.json: results of the 1st round of elections
  • sd-t-17.02-SRW2023-kandidierende_zweiter-wahlgang.json: results of the 2nd round of elections
Node Variable Type Description Comments
timestamp Date and Time of data creation
wahljahr integer Year of the election
wahlgang integer Round of voting
stand Update interval per completed canton
wahlgang_abgeschlossen boolean Indicates that all cantons have delivered their provisional final result for a given round of voting (boolean true/false)
kantone_total integer [26] Total number of cantons
kantone_abgeschlossen integer [1-26] Number of cantons that have delivered their provisional final result for a given round of voting
Stand_kantone
kanton_nummer integer [1-26] FSO canton number Update interval per completed canton
wahlgang_datum date string Date of the election round For election rounds with tacit election (stille_wahl = 1), the original intended date of the election is given.
stille_wahl boolean True if tacit election. Electoral procedure in which the cantonal government declares the person(s) as elected because there were no more candidates than mandates to be allocated. For the second round, the flag is set once the cantons has declared the validity of the single candidature.
zweiter_wahlgang_noetig boolean Indicates whether a second round of voting is necessary in a given canton Only for first round of voting (if wahlgang = 1)
wahlgang_abgeschlossen boolean Indicates whether the respective round of voting is completed in a given canton
kandidierende Update interval per completed canton
kanton_nummer integer FSO canton number
kanton_bezeichnung string Canton name
name string Family name of candidate
vorname string First name of candidate
geschlecht string Sex of candidate F=female, M=male
geburtsdatum date string Date of birth of candidate
geburtsjahr integer Year of birth of candidate
kandidat_status_id integer 2= incumbent; else value=‘null’ see metadaten.json; The value =3 (ehemalig/ancien/ne élu/e/già eletto/a in passato/former) can no longer be supplied for 2023.
kandidat_partei_id integer FSO party number see metadaten.json
flag_gewaehlt boolean Indicates elected and non elected candidates (boolean true/false) In case of a tacit election, the flag is set once the canton has declared the candidate as elected.
stimmen_kandidat integer Number of votes candidate has received will be null in case of tacit election