Eduskuntapeili
Toinen näkökulma Eduskunnan avoimeen dataan.
keskiviikkona 23. syyskuuta 2026


Laadunvalvonta — Eduskuntapeili

Laadunvalvonta

Datan eheystarkistukset

Tarkistukset ajetaan palvelimen käynnistyessä suoraan tietokantaa vasten. Poikkeamat kertovat lähdedatan tai tuontiputken ongelmista.

Tietoputken tila

VaiheTilaViimeksi ajettuEdistyminen
Tietojen hakuEi ajettu
JäsentäminenEi ajettu
Tietokannan migraatioEi ajettu
Asiakirjojen latausEi ajettu
PDF-tekstien poimintaEi ajettu

Tietojen haku

Vaihetta ei ole vielä ajettu — tilatietoja ei ole saatavilla.

Jäsentäminen

Vaihetta ei ole vielä ajettu — tilatietoja ei ole saatavilla.

Tietokannan migraatio

Vaihetta ei ole vielä ajettu — tilatietoja ei ole saatavilla.

Asiakirjojen lataus

Vaihetta ei ole vielä ajettu — tilatietoja ei ole saatavilla.

37/41 tarkistusta läpäisty4 tarkistuksessa poikkeamiaSuoritusaika 10,9 s

Business Logic

OK
Eduskunnan koko enintään 200

Aktiivisten kansanedustajien määrä ei saa ylittää 200 minkään istunnon päivänä.

kriittinen1,7 s
Poikkeamia (17)
Avoimet edustajanpaikat istuntopäivinä

Listaa istuntopäivät, joina aktiivisia kansanedustajia oli alle 200. Lyhyet vajaukset ovat normaaleja seuraajakatkoksia, eivät datavirheitä.

info1,7 s

Tunnettu syy: Paikka on avoinna edustajan poistumisen ja seuraajan aloituksen välillä — tämä on eduskunnan normaalia toimintaa, ei datavirhe. Jokainen rivi näyttää todisteet suoraan datasta: vacant_seats on avointen paikkojen määrä, recent_departures paikan jättänyt edustaja (toimikauden päättymispäivä) ja next_seatings seuraava aloittaja (toimikauden alkupäivä). Esimerkki: Ilkka Kanerva kuoli 14.4.2022 ja Ville Valkonen aloitti 29.4.2022, joten 19.–28.4.2022 istuntopäivinä edustajia oli 199.

Näytä esimerkkirivit · 17 poikkeavaa riviä
datemp_countvacant_seatsrecent_departuresnext_seatings
2019-04-241991Kyllönen Merja (2019-04-22); Halla-aho Jussi (2019-04-23)Kalliorinne Risto (2019-05-02)
2019-11-261991Rantakangas Antti (2019-11-22)Kettunen Tuomas (2019-11-28); Mäkynen Matias (2019-12-03)
2019-11-271991Rantakangas Antti (2019-11-22)Kettunen Tuomas (2019-11-28); Mäkynen Matias (2019-12-03)
2021-09-081982Vartiainen Juhana (2021-09-07); Ikonen Anna-Kaisa (2021-09-07)Said Ahmed Suldaan (2021-09-09); Kinnunen Jari (2021-09-09); Kaleva Atte (2021-09-09)
2022-04-191991Kanerva Ilkka (2022-04-14)Valkonen Ville (2022-04-29)
OK
Ei tulevia istuntoja

Istuntojen päivämäärät eivät saa olla tulevaisuudessa.

varoitus<1 ms
OK
Ei tulevia äänestyksiä

Äänestysten päivämäärät eivät saa olla tulevaisuudessa.

varoitus35 ms
OK
Istunnot vuodesta 1907 alkaen

Suomen eduskunta perustettiin vuonna 1907 — aiempia istuntoja ei pitäisi olla.

kriittinen<1 ms

Data Quality

OK
Kelvollisia ääniarvoja

Äänen arvo täytyy olla Jaa, Ei, Tyhjää tai Poissa.

kriittinen1,3 s
OK
Ei kaksoissyöttöjä äänestyksissä

Jokainen henkilö voi äänestää vain kerran per äänestys.

kriittinen492 ms
OK
Äänimäärä enintään 200

Äänestyksen kokonaisäänimäärä ei saa ylittää 200.

kriittinen4 ms
OK
Äänien ryhmätunnukset ilman reunavälilyöntejä

Vote.group_abbreviation-arvon tulee olla valmiiksi trimmattu ilman alku- tai loppuvälilyöntejä.

varoitus293 ms
OK
Puoluekoodi puuttuu NULL-arvona

Speech.party_abbreviation-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus90 ms
OK
Ministeriö puuttuu NULL-arvona

Speech.ministry-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus10 ms
OK
Kohtahuomautus puuttuu NULL-arvona

Section.note-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus321 ms
OK
Käsittelyotsikko puuttuu NULL-arvona

Section.processing_title-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus6 ms
OK
Päätöslauselma puuttuu NULL-arvona

Section.resolution-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus3 ms
OK
Äänestyksen otsikko puuttuu NULL-arvona

Voting.title-kentässä puuttuva arvo pitää tallentaa NULL-arvona, ei tyhjänä merkkijonona.

varoitus3 ms
OK
Äänien ryhmätunnukset pienaakkosin

Vote.group_abbreviation-arvojen tulee olla normalisoitu pienaakkosiin.

varoitus376 ms
OK
Puheenvuorojen puoluekoodit pienaakkosin

Speech.party_abbreviation-arvojen tulee olla normalisoitu pienaakkosiin.

varoitus21 ms
OK
Nimenhuutopuolueet pienaakkosin

RollCallEntry.party-arvojen tulee olla normalisoitu pienaakkosiin.

varoitus98 ms
OK
Vaski-asiakirjatyypit normalisoitu

VaskiDocument.document_type-arvon tulee olla normalisoitu pienaakkosinen tunniste (ei tyhjä, ei välilyöntejä). Taulu sisältää kymmeniä laillisia tyyppejä, joten kiinteää sallittujen arvojen listaa ei käytetä.

varoitus630 ms
OK
Nimenhuutoriveillä on nimet

RollCallEntry.first_name- ja last_name-kenttien tulee sisältää arvo, ei NULL- tai tyhjää merkkijonoa.

varoitus6 ms
OK
Nimenhuutorivien nimet trimmattuja

RollCallEntry.first_name- ja last_name-arvoissa ei saa olla alku- tai loppuvälilyöntejä.

varoitus7 ms
OK
Ääniarvot normalisoitu

Vote.vote-kentän arvon tulee olla Jaa, Ei, Tyhjää tai Poissa; lähdekielen arvoja ei saa jäädä tietokantaan.

varoitus352 ms
OK
Nimenhuutoraportin tila tunnetuissa arvoissa

RollCallReport.status-kentässä saa olla vain tunnettuja lähdearvoja silloin kun arvo on asetettu.

varoitus4 ms
OK
Vaski-asiakirjoilla on lähdepolku

VaskiDocument.source_path-kentän tulee sisältää ei-tyhjä lähdepolku.

varoitus15 ms
OK
Puhesisällöillä on lähdepolku

SpeechContent.source_path-kentän tulee sisältää ei-tyhjä lähdepolku.

varoitus854 ms

Data Integrity

OK
Toimikausien päivämäärät oikein

Toimikauden alkupäivä ei saa olla loppupäivän jälkeen.

kriittinen<1 ms
OK
Puoluejäsenyyksien päivämäärät oikein

Puoluejäsenyyden alkupäivä ei saa olla loppupäivän jälkeen.

kriittinen<1 ms
OK
Puoluejäsenyydet eivät päälle

Henkilöllä ei saa olla päällekkäisiä puoluejäsenyyksiä eri puolueisiin.

kriittinen1 ms
OK
Hallitusjäsenyyksien päivämäärät oikein

Hallitusjäsenyyden alkupäivä ei saa olla loppupäivän jälkeen.

kriittinen4 ms
OK
Hallituskaudet eivät päällekkäin (1987 alkaen)

Kaksi hallitusta ei saa olla samanaikaisesti aktiivisia. Saman päivän vaihdokset (eroava hallitus päättyy uuden alkaessa) ovat normaaleja, ja vuotta 1987 vanhempia hallituksia ei tarkisteta päivämäärien vuositarkkuuden vuoksi.

kriittinen<1 ms
Poikkeamia (21)
Hallituskausien päivämäärätarkkuus

Listaa hallitukset, joiden alku- tai loppupäivä on tuotu vain vuoden tarkkuudella (paikkamerkit VVVV-01-01 / VVVV-12-31).

info<1 ms

Tunnettu syy: 21 hallituksella 77:stä (kaikki aloittaneet viimeistään 1983) päivämäärät on tuotu lähdedatasta vain vuoden tarkkuudella ja tallennettu muodossa VVVV-01-01 / VVVV-12-31. Päivätason vertailut eivät ole näille riveille mielekkäitä — siksi hallituskausien päällekkäisyystarkistus kattaa vain hallitukset vuodesta 1987 alkaen.

Näytä esimerkkirivit · 21 poikkeavaa riviä
idnamestart_dateend_date
1Sorsa III1982-01-011983-05-06
2Sorsa IV1983-01-011987-12-31
16Paasio II1972-01-011972-09-03
17Sorsa1972-01-011975-06-12
18Miettunen II1975-01-011976-09-28
OK
Äänityyppien summa täsmää

n_yes + n_no + n_abstain + n_absent täytyy olla n_total.

kriittinen4 ms
OK
Yksittäisten äänien määrä täsmää

Äänestysrivien lukumäärän täytyy vastata n_total-arvoa, istuntopäivän avoimet edustajanpaikat huomioiden.

kriittinen228 ms
OK
Annettujen äänten jakauma täsmää

Äänestyksen kirjatut Jaa/Ei/Tyhjää-määrät täytyy vastata täsmälleen yksittäisten äänirivien jakaumaa.

kriittinen527 ms
OK
Poissaolojen määrä täsmää

Äänestyksen kirjatun poissaolomäärän täytyy vastata yksittäisiä Poissa-rivejä, istuntopäivän avoimet edustajanpaikat huomioiden.

kriittinen327 ms

Referential Integrity

OK
Äänet → Äänestykset

Kaikkien äänirivien täytyy viitata olemassa olevaan äänestykseen.

kriittinen679 ms
OK
Äänestykset → Edustajat

Kaikilla äänillä täytyy olla vastaava edustaja.

kriittinen522 ms
Poikkeamia (20)
Kohdat → Istunnot

Kaikkien kohtien täytyy viitata olemassa olevaan istuntoon.

kriittinen12 ms
Näytä esimerkkirivit · 20 poikkeavaa riviä
keysession_key
Ne6icnxQTfy5x0o2026/86
iXdy0famfU6gMho2026/86
jsOaJsUA9pynUuv2026/86
0UKuXl100TEpDiY2026/86
HoDgEtw690fBmO92026/86
OK
Äänestykset → Istunnot (vaalikaudesta 2015 alkaen)

Vaalikaudesta 2015 (22.4.2015) alkaen jokaisen äänestyksen täytyy viitata olemassa olevaan istuntoon. Vanhempia äänestyksiä ei tarkisteta, koska niiden istuntoviittaukset käyttävät vanhan järjestelmän numerointia.

kriittinen5 ms
Poikkeamia (5)
Äänet annettu toimikauden aikana

Jokaisen äänestyspäivän äänillä täytyy olla äänestäjälle voimassa oleva toimikausi.

varoitus157 ms

Tunnettu syy: Toimikausidata ei kata 1990-luvun sijaisuusjaksoja täydellisesti. Tunnetut tapaukset: Nikula 13.3.1998, Kemppainen 23.4.–18.6.1999 (kolme äänestyspäivää) ja Erlund 25.4.2000 — näinä päivinä annetuille äänille ei löydy voimassa olevaa toimikautta.

Näytä esimerkkirivit · 5 poikkeavaa riviä
person_idvoting_date
4121998-03-13
3221999-04-23
3221999-06-04
3221999-06-18
5592000-04-25
OK
Edustajilla on toimikausia

Jokaisella edustajalla täytyy olla vähintään yksi toimikausi.

kriittinen1 ms

PDF-tekstien poiminta

Poimintaa ei ole vielä ajettu — tilatietoja ei ole saatavilla.