Stránka 1 z 1

Political Memory pro český parlament

Napsal: 01 říj 2010, 19:04
od next_ghost
Už nějakou dobu přemýšlím o obdobě Political Memory pro český parlament, aby ČPS mohla v příštích volbách omlátit současným politikům o hlavu jejich nesplněné sliby o transparenci a rozhodnutní v rozporu s volebním programem. Zároveň by ČPS mohla k vybraným hlasováním doplnit svoje oficiální stanovisko a hlasy stínových pirátských poslanců.

Technicky by to mohlo vypadat zhruba takhle: Veškerá hlasování parlamentu se importují do pirátské databáze (jednoduchý skript v Perlu na import je v příloze). Zároveň se do systému nahraje i seznam předvolebních slibů ostatních stran. Uživatelé pak ke každé hlasovací otázce budou moct sami hlasovat, jestli je přijetí návrhu s jednotlivými sliby dané strany v souladu, v rozporu, nebo s nimi nesouvisí. Když pak bude hlasů dost, ohodnotí se rozhodnutí jednotlivých poslanců vzhledem k jejich stranické příslušnosti.

Skript importuje výsledky všech hlasování za celé jedno zasedání parlamentu. Web parlamentu nemá žádný export pro strojové zpracování, takže import těch několika desítek HTML stránek chvíli trvá. Další problém je s hlasovacími otázkami, ty se budou muset importovat ručně ze stenozáznamu (zjednodušený nespolehlivý import by se dal dopsat, ale stejně bude potřeba ruční zásah). Hlavní funkce (importAssembly) bere jeden argument (číslo zasedání) a vrací pole hashů, jeden hash na každé hlasování.

Obsah hashe:
'topic' => název hlasovacího bodu (k jednomu bodu může být několik hlasování, ty mají tuhle hodnotu stejnou)
'point' => číslo hlasovacího bodu (stejné jako výše, u procedurálních hlasování tahle hodnota chybí)
'stenoURL' => URL související části stenozáznamu (odkaz vede na vyhlášení výsledků hlasování, ne na hlasovací otázku, ta může být i o několik odstavců dřív, u některých hlasování chybí)
'stenoAnchor' => HTML kotva hlasování ve stránce stenozáznamu (opět může chybět jako 'stenoURL')
'id' => číslo hlasování v rámci schůze (unikátní)
'voteURL' => URL stránky se jmennými výsledky hlasování
'results' => pole jmenných výsledků

Obsah hashe jmenných výsledků:
'name' => jméno poslance
'vote' => pro/proti/omluven/nepřihlášen/zdržel se (hodnoty A/N/M/0/Z)
'profileURL' => URL profilu daného poslance na webu PSP

Skript vypisuje jen testovací výstup, zápis do skutečné databáze je potřeba dopsat. Pro běh potřebuje balíky libwww-perl a Text-Iconv.