Catalog ›Public data ›Transparency
Parliament by the numbers — Chamber and Senate bills and votes
The Chamber of Deputies' bills and votes, the Senate's bills and their outcome — every Republic legislature, since 1948. Official data from dati.camera.it and the Senate.
📗 Chamber📘 Senate
data space «parlamento» — the suite’s glue: on your device, multi-user with one invite (link or QR), end-to-end encrypted.
What it records
- Legislature
- A word in the title, e.g. «budget»
- Legislature
Composed of 2 micro apps
One job each, over the same data: every micro app reads and writes the shared data space “parlamento” (with your consent, asked on first open). Everything stays on your device — and with a single invite the whole suite goes multi-user, end-to-end encrypted.
How it works
This is a Reactive app: a plain text document that your browser turns into a working app — forms, live data, tables, statistics and even charts, with nothing to install or configure.
- Use it right away. Hit “Use this app”: it opens right in your browser, ready to go, with data saved only on your device.
- Your data stays yours. Everything is stored locally on your device, kept separate for each app: no account, no server, nothing to set up.
- Make it your own. The text below is the entire app: copy it, tweak fields, views and words, and your changes become interactive instantly.
- Share it as a file. An app is a simple file: save it, export it or share it with a link; and with encrypted collaboration several people edit the same data in real time.
The app’s source
# 🏛️ Parliament by the numbers
The Chamber of Deputies' bills and votes, the Senate's bills and their
outcome — every Republic legislature, since 1948. Official data from
dati.camera.it and the Senate.
:::::page{title="Chamber" icon="📗"}
## The votes
Pick the legislature (19 = the current one).
::input[leg]{value="19" placeholder="Legislature"}
::od-query{into="riepilogo" sql="SELECT esito AS esito, count(*) AS n FROM camera_votazioni WHERE legislatura = TRY_CAST('{#leg}' AS INTEGER) AND esito IS NOT NULL GROUP BY esito"}
::chart-pie{data="riepilogo" label="esito" value="n" height="14rem"}
### The latest votes
::od-query{into="voti" sql="SELECT data AS data, titolo AS titolo, esito AS esito, favorevoli AS favorevoli, contrari AS contrari, astenuti AS astenuti FROM camera_votazioni WHERE legislatura = TRY_CAST('{#leg}' AS INTEGER) AND titolo IS NOT NULL ORDER BY data DESC LIMIT 30" limit="30"}
:::table{path="voti" headers="Date,Title,Outcome,For,Against,Abstained" pagesize="10"}
{data} | {titolo} | {esito} | {favorevoli} | {contrari} | {astenuti}
:::
### Search a bill
::input[q]{placeholder="A word in the title, e.g. «budget»"}
::od-query{into="atti" sql="SELECT titolo AS titolo, data AS data, primo_firmatario AS primo_firmatario, iniziativa AS iniziativa, url AS url FROM camera_atti WHERE legislatura = TRY_CAST('{#leg}' AS INTEGER) AND titolo ILIKE '%' || '{#q}' || '%' ORDER BY data DESC LIMIT 20" limit="20"}
:::cards{path="atti" search="false"}
**{titolo}**
{primo_firmatario} · {iniziativa} · {data}
[Official record]({url})
:::
:::::
:::::page{title="Senate" icon="📘"}
## The bills
Same legislature, Senate side — with the latest known stage of the process.
::input[legS]{value="19" placeholder="Legislature"}
::od-query{into="ddl" sql="SELECT titolo_breve AS titolo_breve, natura AS natura, ramo AS ramo, stato AS stato, data_stato AS data_stato, relatore AS relatore, url AS url FROM senato_ddl WHERE legislatura = TRY_CAST('{#legS}' AS INTEGER) ORDER BY data_stato DESC LIMIT 30" limit="30"}
:::table{path="ddl" headers="Title,Nature,Chamber of origin,Status,Date,Rapporteur" pagesize="10"}
{titolo_breve} | {natura} | {ramo} | {stato} | {data_stato} | {relatore}
:::
### Passed into law
The bills from this legislature that completed their process.
::od-query{into="leggi" sql="SELECT COALESCE(titolo_breve, titolo) AS titolo_breve, numero_legge AS numero_legge, data_legge AS data_legge, url AS url FROM senato_ddl WHERE legislatura = TRY_CAST('{#legS}' AS INTEGER) AND numero_legge IS NOT NULL ORDER BY data_legge DESC LIMIT 20" limit="20"}
:::cards{path="leggi" search="false"}
**{titolo_breve}**
Law no. {numero_legge} of {data_legge}
[Record]({url})
:::
:::::
---
The data are the **Chamber of Deputies' bills and electronic roll-call
votes** (source dati.camera.it, OCD ontology, CC BY-SA 4.0) and the
**Senate's bills** (source SenatoDellaRepubblica/OpenData on GitHub, CC BY
3.0), every Republic legislature. None of your data leaves the device.