1
0

MK-Lemumi-as-Code

Ministru kabineta sēdes un to lēmumi kā strukturēti dati: darba kārtība (jautājumi ar TAP identifikatoru, ziņotāju un statusu) un lēmumu teksts pa punktiem — MK sēdes protokollēmumi un rīkojumi — ar adresātu, darbības veidu un termiņu.

Avots — TAP portāls (Valsts kanceleja). TAP darba kārtību un lēmumu tekstu publicē HTML lapās, nevis mašīnlasāmā formā, un shēmu tiem nepublicē. Šis repozitorijs pievieno shēmu un pārveido lapas datos.

Mape / datne Saturs
schemas/mk-lemumi-0.1.xsd shēma: sēde, sadaļas, jautājumi, lēmumi, punkti
data/lv-mk-sede-GGGG-MM-DD.xml viena datne — viena MK sēde
sources/<sēde>/ lēmumu teksts, kā TAP lapā (numurs un teksts pa rindām) — katram lēmumam viena datne
verification/<sēde>.verify.json pārbaudes atskaite pret TAP lapām
contracts/B16-mk-lemumi.odcs.yaml datu līgums (ODCS v3, ģenerēts no shēmas) — datu kopa B16 VDZP datu ezerā
schemas/tap-*.schema.json, contracts/B07-…, B17-…, B18-…source.odcs.yaml TAP atvērto datu (data.gov.lv) JSON shēmas un avota datu līgumi — skat. zemāk
tools/ ielāde no TAP, pārveide, pārbaude
data/processgit.viewer.json, editor/mk-sede.html ProcessGit skatītājs: sēdes datne atveras kā lasāms teksts ar meklēšanu

Datne

<Item id="lv-mk-sede-2026-10-13.q2.1" n="2.1" tap="26-TA-2145" restricted="true" status="Pieņemts" addedLate="true">
  <Title>Informatīvais ziņojums "Par darījuma attīstības progresu un papildus jautājumiem"</Title>
  <Presenter>V. Valainis</Presenter>
  <Decision id="lv-mk-sede-2026-10-13.q2.1.pl" document="MK sēdes protokollēmuma projekts" textStatus="draft">
    <Point id="lv-mk-sede-2026-10-13.q2.1.pl.p4" n="4." kind="task">
      <Text>Ekonomikas ministrijai līdz 2026. gada 10. novembrim iesniegt Ministru kabinetā aktuālo progresa ziņojumu …</Text>
      <Party role="institution" org="12-0000">Ekonomikas ministrijai</Party>
      <Deadline date="2026-11-10">līdz 2026. gada 10. novembrim</Deadline>
    </Point>
  </Decision>
</Item>
Lauks Nozīme
Item jautājums darba kārtībā: numurs, TAP identifikators (26-TA-2145), IP (ierobežotas pieejamības), statuss (Pieņemts, Atlikts …), „iekļauts papildus”, „skatīts A sadaļā”, „atlikts”
ActType, Responsible projekta veids un atbildīgā institūcija no TAP (org — VPK ID)
Decision lēmuma teksts: protokollēmums (.pl) vai rīkojums (.rik); rīkojumam — numurs, protokola numurs un paragrāfs no virsraksta rindas
Point punkts: numurs un teksts burtiski kā TAP; apakšpunkti — iekšā; jaunā redakcija pēdiņās — Quote
kind darbības veids: note (zināšanai), task (uzdevums institūcijai), adopt, approve, support, invite, permit, allocate, amend …; part — apakšpunkts, kas turpina teikumu; provision — cits noteikums
Party institūcija vai pašvaldība, kas punktā minēta datīvā (kam uzdots, atļauts, piešķirts): org — VPK ID (Organizations_register), atvk — ATVK kods (Pasvaldibu-registrs); role="minister" — ministrs (ministrijas VPK ID)
Deadline termiņš: datums un teksts, kā punktā
government valdība no valdību reģistra (Valdibas-Deklaracija-as-Code)

Identifikatori: sēde lv-mk-sede-GGGG-MM-DD, jautājums <sēde>.q<numurs>, lēmums <jautājums>.pl / .rik, punkts <lēmums>.p<numurs> (apakšpunkts .p2.1, nenumurēts teksta lauks .u1). Identifikators ir sēdes robežās, jo viens TAP projekts var tikt skatīts vairākās sēdēs.

Kas ir burtiski un kas izgūts

  • Burtiski kā TAP: darba kārtība, punktu numuri un teksts, jaunā redakcija, virsraksta rindas, paraksti. Atstarpes normalizētas.
  • Izgūts ar noteikumiem (tools/derive.py, bez valodas modeļa): kind, Party, Deadline. Tās ir norādes datu meklēšanai un sasaistei; juridiski saistošs ir teksts. Ja kaut ko nevar droši noteikt, lauks paliek tukšs.
  • Teksta statuss: draft — protokollēmuma vai rīkojuma projekts, kā pievienots darba kārtībai sēdes dienā; sēdē to var grozīt. Kad TAP publicē sēdes protokolu, sēdes datne tiek atjaunota (jauna datu versija).
  • IP jautājumi: publisks ir tikai protokollēmums; ziņojums nav publisks un nav iekļauts.

TAP atvērtie dati (data.gov.lv)

Valsts kanceleja publicē trīs TAP datu kopas JSON:API formātā, bet bez shēmas. Šeit katrai ir JSON shēma un avota datu līgums (ODCS v3). Datus šeit neglabā: VDZP datu ezers tos katru dienu lasa no portāla, validē pret shēmu un pārbauda pēc līguma.

Datu kopa VDZP Portālā Shēma Līgums
B07 TAP publicētie tiesību akti tap-publicetie-tiesibu-akti — viena datne mēnesī schemas/tap-publicetie-tiesibu-akti-0.1.schema.json contracts/B07-tap-publicetie-tiesibu-akti.source.odcs.yaml
B17 TAP politikas jomas tap-politikas-jomas schemas/tap-politikas-jomas-0.1.schema.json contracts/B17-tap-politikas-jomas.source.odcs.yaml
B18 TAP tiesību aktu veidi tap-tiesibu-aktu-veidi schemas/tap-tiesibu-aktu-veidi-0.1.schema.json contracts/B18-tap-tiesibu-aktu-veidi.source.odcs.yaml

B07 projekta numurs (identificator, piem. 26-TA-2145) ir tas pats, kas sēdes datnē Item/@tap — tā MK sēdes jautājums sasaistās ar projektu.

Pārbaude

pip install lxml
python3 tools/validate.py                              # shēma, identifikatori, reģistri, katrs punkts avota tekstā
python3 tools/verify.py .cache/<sēdes uuid> data/lv-mk-sede-….xml   # pret TAP lapām (pēc ielādes)

tools/verify.py lapu nolasa citādi nekā pārveide — visu teksta bloku kā vienu virkni — un pārbauda, ka katrs punkts ir lapā burtiski un tādā pašā secībā, lapas sha256 sakrīt un lapā nav palicis teksts, kura datnē nav. Atskaite — verification/.

Atjaunošana

python3 tools/fetch.py              # jaunākā MK sēde (vai: tools/fetch.py 2026-10-13)
python3 tools/convert.py .cache/<sēdes uuid>
python3 tools/validate.py && python3 tools/verify.py .cache/<sēdes uuid> data/lv-mk-sede-….xml

Ielāde no TAP — pa vienai lapai ar pauzi; kešs .cache/ netiek glabāts git. Jaunas sēdes un izmaiņas iesniedz kā git commit.

PPPA koncepcijas demonstrācija (Valsts PirmKods), nav oficiāls valsts dokuments. Juridiski saistošs ir oficiālajā izdevumā „Latvijas Vēstnesis” publicētais teksts un Ministru kabineta sēdes protokols.

Description
No description provided
Readme 823 KiB
Languages
Python 78.8%
HTML 21.2%