Det nederländska parlamentets datalager är tillgängligt med SQL via en ny anslutning, TweedeKamerV2. Den använder sig av parlamentets OData v5-anslutning istället för v2-anslutningen. V2-anslutningen kommer att upphöra den 1 oktober 2026.
Denna nya driver möjliggör för första gången även kopplingarna mellan data: vilken röst hör till vilket beslut, vilket dokument hör till vilket ärende, vilken bokning hör till vilket rum, etc.
Varför en ny anslutning
Det nederländska parlamentet drar tillbaka anslutningen OData/v4/2.0 den 1 oktober 2026. Den befintliga anslutningen TweedeKamerNl läser denna anslutning och kommer då att sluta fungera. Den nya anslutningen läser efterföljaren OData/v5.
Båda anslutningarna kommer att existera parallellt fram till den 1 oktober 2026, så att befintliga rapporteringsprocesser kan övergå utan avbrott.
Vad som förändras: kopplingarna
Den gamla anslutningen erbjöd tabellerna men inte kopplingarna mellan dem. En referens till en enskild annan post expanderades till kolumner från den andra posten, vilka sedan alltid förblev tomma; en referens till flera poster försvann utan meddelande. Detta gjorde drivrutinen mindre värdefull för många scenarier.
Den nya anslutningen registrerar alla 132 referenser som modellen känner till på två sätt:
- en referens till en enskild annan post blir en vanlig kolumn med nyckeln i, till exempel
Besluit_Idpå en röstning. På detta sätt kan filtrering och kopplingar utföras; - en referens till flera poster får en egen anslutningstabell med två kolumner, till exempel
ZaalReserveringenmellan rum och bokningar.
Exempel: röster emot vid avslagna beslut
Följande fråga räknar per partigrupp hur ofta de röstade emot ett beslut som blev avslaget. Det kräver att två tabeller används samtidigt: typen av beslut står på beslutet, rösten på röstningen.
select stg.fractienaam
, count(*) as aantal_tegen
from TweedeKamer..Stemmingen stg
join TweedeKamer..Besluiten bst
on bst.id = stg.besluit_id
and bst.soort = 'Stemmen - verworpen'
where stg.soort = 'Tegen'
and stg.GewijzigdOp >= trunc(sysdateutc) - 14
group
by stg.fractienaam
Exempel: hur mycket används varje rum?
Den andra typen av koppling, anslutningstabellen, förbinder två tabeller som inte har en nyckel till varandra. Rum och bokningar är ett sådant par:
select zal.naam as zaal
, count(*) as aantal_reserveringen
from TweedeKamer..ZaalReserveringen zrg
join TweedeKamer..Zalen zal
on zal.id = zrg.zaal_id
group
by zal.naam
På så sätt lär vi oss att Throbecke-salen har många bokningar, men att “Oude zaal - Rooksalon” har väldigt få.
Att byta över
Tabellnamnen är till största delen identiska mellan tabellerna.
Se även: