Eduskunnan äänestystiedot rajapintana ja visualisoituna
Rajapinta ei ole enää toiminnassa. Eduskunta on rakentamassa (1/2017) itse vastaavaa mutta laajempaa rajapintaa. Tämän rajapinnan ylläpito oli työlästä, äänestyksien tiedot olivat itsessään vaikeaselkoisia eikä rajapintaa tietääkseni käytetty enää missään.
Eduskuntarajapinta ja sitä hyödyntävä äänestyskone voitti Apps4Finland 2010 -kilpailun Indie-kategorian.
Eduskunnan äänestysten tulokset ovat saatavilla eduskunnan sivuilta, mutta hankalasti löydettävässä ja luettavassa muodossa. Erityisesti yksittäisten kansanedustajien äänestyskäyttäytymisestä on vaikea saada selkoa koska äänestysvalinnat ovat hajallaan eri äänestysten tulossivuilla.
Asian parantamiseksi rakensin epävirallisen rajapinnan, jonka kautta äänestyksen tulokset ovat saatavissa koneluettavassa XML-muodossa. Tämän varaan voi helposti rakentaa uusia sovelluksia, joista muutamia esimerkkejä alla. Blogissa on lisää taustatietoa palvelun tekemisestä.
Äänestyskone ja tulokset visualisoituna
Rajapinnan ja sen pohjana olevan tulostietokannan varaan voi rakentaa esim. visualisointi-, haku- ja julkaisupalveluja.
- Äänestykset luettelona
- Yksittäisen äänestyksen tulokset selkeästi väreillä ilmaistuna,
esimerkkinä tekijänoikeuslain muutos, ”Lex Karpela”.
- Yksittäisen äänestyksen tulokset selkeästi väreillä ilmaistuna,
- Edustajat luettelona
- Edustajan äänestyskäyttäytyminen, esimerkkinä Jyrki Kasvi
- Äänestyskoneella voit selvittää ketkä kansanedustajat
ovat äänestäneet mielipiteesi mukaan
Lisäksi Ilkka Pirttimaa on tehnyt tämän rajapinnan pohjalta Twitter-virran ja Facebook-sivun äänestystuloksista (eivät enää päivity).
Eduskunta on kertomansa mukaan (kevät 2010) selvittämässä äänestysten ja muidenkin täysistuntotietojen rajapinnan toteutusvaihtoehtoja. Jotain vastaavaa, virallista ja laajempaa on siis tulossa, mutta tämän ajankohdasta en tiedä.
Rajapinnan tekniikkaa
Rajapintaa saa käyttää mihin tarkoitukseen tahansa, kunhan hakujen määrä pysyy kohtuullisena (luokkaa < 1000 hakua per päivä). Toivon että mahdollisesta käytöstä kerrotaan; mielenkiinnosta ja jotta voin vastaavasti kertoa muutoksista etukäteen. Pyrin pitämään palvelun toiminnassa ja päivittämään siihen uusien äänestysten tiedot, mutta en takaa tätä.
Äänestysten tiedot haetaan puoliautomaattisesti Eduskunnan sivuilta PHP:lla screen scraping -tekniikalla. En tarkista niitä silmäilyä tarkemmin, joten tiedoissa voi olla virheitä (mutta yhtään ei ole löydetty toistaiseksi).
Rajapintatietokantaan on tallennettu äänestyksiä vuoden 2010 alusta, muutamia syksyltä 2009, sekä tunnettuihin lakeihin liittyviä äänestyksiä muilta ajoilta (mm. ”Lex Nokia” ja ”Lex Karpela”).
Käyttöohjeet
Äänestysten tunnisteet ovat muotoa a{äänestyksen numero}_{istunnon numero}-{vuosi}. Muut tiedot tulevat suoraan Eduskunnan sivuilta. Niiden merkitys selviää parhaiten vertaamalla XML:aa äänestystietoihin Eduskunnan sivuilla.
Luettelo kaikista äänestyksistä
http://www.biomi.org/eduskunta/
Yhden äänestyksen tiedot
http://www.biomi.org/eduskunta/?haku=aanestys&id={äänestyksen tunniste}
Esim. http://www.biomi.org/eduskunta/?haku=aanestys&id=a3_15-2010
Yhden edustajan äänestykset
http://www.biomi.org/eduskunta/?haku=edustaja&id={sukunimi etunimi}
Esim. http://www.biomi.org/eduskunta/?haku=edustaja&id=Lind%E9n%20Suvi ja
http://www.biomi.org/eduskunta/?haku=edustaja&id=Hyss%E4l%E4%20Liisa
Välilyönnit, ääkköset yms. erikoismerkit korvataan vastaavilla kolmimerkkisillä koodeilla.
Äänestykset hakusanalla
http://www.biomi.org/eduskunta/?haku=sanahaku&id={hakusana}
Esim. http://www.biomi.org/eduskunta/?haku=sanahaku&id=luonnon
Tämä palauttaa niiden äänestysten tiedot, joiden otsikossa esiintyy annettu hakusana (enintään 20 äänestystä). Välilyönnit, ääkköset yms. kuten edellisessä.
Jatkokehitys
Eduskunnan sivuilla on runsaasti erilaisia äänestyksiin, edustajiin, puolueisiin, aloitteisiin, esityksiin, valiokuntiin jne. liittyviä tietoja, jotka voisi myös julkaista rajapintana. Nykyiseen rajapintaan voisi ottaa mukaan lisää asioita; selkein puute on kunkin äänestyksen päiväjärjestysnumero. (Tätä tarvitaan, jotta äänestystuloksiin voisi tehdä linkin ilman käsityötä; äänestyshaun tuottamat linkit eivät ole pysyviä).
- Kehitysajatuksia ja ideoita luetteloituna Google Docsissa, jonne kuka tahansa voi lisätä omia ajatuksiaan.
- Keskustelua aiheesta Qaikussa (ei enää saatavilla)
Tekijänoikeuksista
Äänetystietojen julkaisu tässä on eduskuntatiedotuksen mukaan luvallista. Tekijänoikeuslain perusteella tämänkaltaisiin asiakirjoihin ei ole tekijänoikeutta. Voit käyttää rapainnan dataa miten haluat (ks. alla).
Lisää tietoa rajapinnasta ja sen lähdekoodi on saatavissa Githubista MIT-lisenssillä.
Inspiraatio
Samuli Sairanen esitteli ajatuksiaan äänestystuloksia sisältävästä sivustosta Eduskunnan vahtikoira -ideassaan jo vuonna 2009.
The New York Times julkaisi rajapinnan USA:n kongressin äänestyksiin vuonna 2009.