1
0

Autoritatīvās datnes mapē data/; datnes nosaukums = identifikators

data/lv-dekl-2026-05-28.xml — A. Kulberga valdības deklarācija;
data/lv-mk-2026-05-28.rp.xml — valdības rīcības plāns (MK rīkojums Nr. 449);
data/organizacijas.xml, data/valdibas.xml — reģistri.
Pārbaudītājs pārbauda, ka deklarācijas un rīcības plāna datnes nosaukums
atbilst saknes elementa identifikatoram.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016679RwmHsuTFfxt26wP6rk
This commit is contained in:
2026-10-09 22:02:28 +00:00
parent 124aea90e4
commit c80cb37187
11 changed files with 46 additions and 28 deletions

View File

@@ -2,6 +2,8 @@
## 0.2 — 2026-10-09 ## 0.2 — 2026-10-09
- Autoritatīvās datnes mapē `data/` (iepriekš `examples/`); datnes nosaukums = objekta identifikators (`lv-dekl-2026-05-28.xml`, `lv-mk-2026-05-28.rp.xml`); pārbaudītājs to pārbauda.
- Viena vārdtelpa visai saimei: `urn:pppa:cac:valdiba:0.2`. - Viena vārdtelpa visai saimei: `urn:pppa:cac:valdiba:0.2`.
- Globāli unikāli identifikatori visiem elementiem (`docs/IDENTIFIKATORI.md`); valdības ID `lv-mk-…`, deklarācijas ID `lv-dekl-…`. - Globāli unikāli identifikatori visiem elementiem (`docs/IDENTIFIKATORI.md`); valdības ID `lv-mk-…`, deklarācijas ID `lv-dekl-…`.
- Jauns: valdību un organizāciju reģistrs (`GovernmentRegistry`). - Jauns: valdību un organizāciju reģistrs (`GovernmentRegistry`).
@@ -20,7 +22,7 @@
- Redaktorā cilnes „Valdības deklarācija” un „Rīcības plāns”: deklarācija tiek atvērta lasīšanai, rediģēšanu ieslēdz slēdzis „Rediģēt”; rīcības plāna skatā pie katra uzdevuma labajā pusē — tā pasākumi (pasākums, rezultāts, atbildīgie, termiņš, prioritāte, finansējums) un kārtības ruļļa 18. un 20. punkta pārbaude. - Redaktorā cilnes „Valdības deklarācija” un „Rīcības plāns”: deklarācija tiek atvērta lasīšanai, rediģēšanu ieslēdz slēdzis „Rediģēt”; rīcības plāna skatā pie katra uzdevuma labajā pusē — tā pasākumi (pasākums, rezultāts, atbildīgie, termiņš, prioritāte, finansējums) un kārtības ruļļa 18. un 20. punkta pārbaude.
- Redaktors atveras ar Andra Kulberga vadītā Ministru kabineta deklarāciju (lasīšanas režīmā). „Jaunas deklarācijas projekts” atveras kā tukšs projekts rediģēšanas režīmā; poga „Importēt esošo” pārņem projektā Andra Kulberga deklarāciju. Citu deklarāciju importa saraksts izņemts. - Redaktors atveras ar Andra Kulberga vadītā Ministru kabineta deklarāciju (lasīšanas režīmā). „Jaunas deklarācijas projekts” atveras kā tukšs projekts rediģēšanas režīmā; poga „Importēt esošo” pārņem projektā Andra Kulberga deklarāciju. Citu deklarāciju importa saraksts izņemts.
- Redaktorā cilne „Organizācijas”: reģistra nepieciešamība, CaC ID uzbūve, meklējams reģistrs ar pasākumu skaitu katrai institūcijai, plānā minētās institūcijas, kuru reģistrā nav, shēma. Rīcības plāna skatā pie atbildīgajām institūcijām — CaC ID. - Redaktorā cilne „Organizācijas”: reģistra nepieciešamība, CaC ID uzbūve, meklējams reģistrs ar pasākumu skaitu katrai institūcijai, plānā minētās institūcijas, kuru reģistrā nav, shēma. Rīcības plāna skatā pie atbildīgajām institūcijām — CaC ID.
- Jauns: organizāciju reģistrs (institūcijas identifikators — CaC ID) (`organizaciju-registrs-0.2.xsd`, `examples/organizacijas.xml`), uzturētājs — Valsts kanceleja. Identifikators `SS-IIII` — resors un institūcija resorā, resora vadošā institūcija `SS-0000` (piemēram `20-0000` — Klimata un enerģētikas ministrija); identifikatorus piešķir reģistra uzturētājs, Valsts kases kodi — sasaiste pa gadiem (`BudgetCode`); reģistrācijas numurs — `regNo`; rezervētie resori 00, 90–93; pārceļot institūciju uz citu resoru — jauns identifikators un `successor`; resors, iestādes kods, augstākā iestāde, saīsinājumi, iepriekšējais nosaukums. Izveidots no VDVC reģistra (`tools/organizacijas_no_vdvc.py`); atgūtas 10 institūcijas no sapludinātām avota rindām, pārbaudot pret Valsts kases „Valsts budžeta iestāžu sarakstu” (01.09.2023). - Jauns: organizāciju reģistrs (institūcijas identifikators — CaC ID) (`organizaciju-registrs-0.2.xsd`, `data/organizacijas.xml`), uzturētājs — Valsts kanceleja. Identifikators `SS-IIII` — resors un institūcija resorā, resora vadošā institūcija `SS-0000` (piemēram `20-0000` — Klimata un enerģētikas ministrija); identifikatorus piešķir reģistra uzturētājs, Valsts kases kodi — sasaiste pa gadiem (`BudgetCode`); reģistrācijas numurs — `regNo`; rezervētie resori 00, 90–93; pārceļot institūciju uz citu resoru — jauns identifikators un `successor`; resors, iestādes kods, augstākā iestāde, saīsinājumi, iepriekšējais nosaukums. Izveidots no VDVC reģistra (`tools/organizacijas_no_vdvc.py`); atgūtas 10 institūcijas no sapludinātām avota rindām, pārbaudot pret Valsts kases „Valsts budžeta iestāžu sarakstu” (01.09.2023).
- Rīcības plānā atbildīgās un līdzatbildīgās institūcijas norāda ar organizāciju reģistra identifikatoru (`orgs`), nevis kodu; organizācijas izņemtas no valdību reģistra. - Rīcības plānā atbildīgās un līdzatbildīgās institūcijas norāda ar organizāciju reģistra identifikatoru (`orgs`), nevis kodu; organizācijas izņemtas no valdību reģistra.
- Rīcības plāna skatā katram pasākumam identifikators (`rp.u001.p3`) un kartīte ar metadatiem: deklarācijas uzdevums, pasākuma vieta uzdevumā, sadaļa, rīkojums, finansējums, prioritāte, atbildīgie, termiņš. Uzdevuma kartītē — tā pasākumu identifikatori. - Rīcības plāna skatā katram pasākumam identifikators (`rp.u001.p3`) un kartīte ar metadatiem: deklarācijas uzdevums, pasākuma vieta uzdevumā, sadaļa, rīkojums, finansējums, prioritāte, atbildīgie, termiņš. Uzdevuma kartītē — tā pasākumu identifikatori.
- Rīcības plāns — otrā datu kopa: shēma pārdēvēta un pārstrādāta (`valdibas-deklaracijas-ricibas-plans-0.2.xsd`, saknes elements `GovernmentActionPlan`). Plāna ailes 1–3 (sadaļa, uzdevuma numurs, uzdevuma teksts) netiek kopētas — pasākums norāda deklarācijas uzdevuma identifikatoru. Pasākumam: teksts, darbības rezultāts, atbildīgās un līdzatbildīgās institūcijas, termiņš (burtiski) un pazīmes — finansējums (rīkojuma 1. vai 2. pielikums) un prioritāte. - Rīcības plāns — otrā datu kopa: shēma pārdēvēta un pārstrādāta (`valdibas-deklaracijas-ricibas-plans-0.2.xsd`, saknes elements `GovernmentActionPlan`). Plāna ailes 1–3 (sadaļa, uzdevuma numurs, uzdevuma teksts) netiek kopētas — pasākums norāda deklarācijas uzdevuma identifikatoru. Pasākumam: teksts, darbības rezultāts, atbildīgās un līdzatbildīgās institūcijas, termiņš (burtiski) un pazīmes — finansējums (rīkojuma 1. vai 2. pielikums) un prioritāte.

View File

@@ -27,36 +27,51 @@ Deklarācijas formātu neviens normatīvais akts nenosaka. Kārtības rullis par
## Saturs ## Saturs
### Dati (`data/`) — autoritatīvās datnes
Datnes nosaukums ir objekta identifikators.
| Datne | Saturs |
|---|---|
| `data/lv-dekl-2026-05-28.xml` | Deklarācija par Andra Kulberga vadītā Ministru kabineta iecerēto darbību (28.05.2026): viss teksts, 11 sadaļas, 52 uzdevumi |
| `data/lv-mk-2026-05-28.rp.xml` | Valdības rīcības plāns tās īstenošanai (MK rīkojums Nr. 449, 27.07.2026): 185 pasākumi 52 uzdevumiem, teksts burtiski no likumi.lv; atbildīgās institūcijas ar CaC ID |
| `data/organizacijas.xml` | Valsts institūciju reģistrs (CaC ID): 165 valsts budžeta iestādes un 16 citas institūcijas un grupas; uzturētājs — Valsts kanceleja |
| `data/valdibas.xml` | Valdību reģistrs: piecas valdības (2016–2026) |
### Shēmas (`schemas/`)
| Datne | Saturs |
|---|---|
| `schemas/valdibas-deklaracija-0.2.xsd` | Deklarācija |
| `schemas/valdibas-deklaracijas-ricibas-plans-0.2.xsd` | Valdības deklarācijas rīcības plāns: pasākumi, rezultāti, atbildīgie, termiņi, izpildes gaita; katrs pasākums norāda deklarācijas uzdevumu |
| `schemas/organizaciju-registrs-0.2.xsd` | Organizāciju reģistrs: CaC ID (`SS-IIII`; ministrija — `SS-0000`), reģistrācijas numurs, nosaukums, saīsinājumi, augstākā institūcija |
| `schemas/cac-valdiba-kopejie-0.2.xsd` | Kopīgie tipi (identifikatori, datumi) un valdību reģistrs |
### Rīki, dokumentācija, avoti
| Mape / datne | Saturs | | Mape / datne | Saturs |
|---|---| |---|---|
| `schemas/cac-valdiba-kopejie-0.2.xsd` | Kopīgie tipi (identifikatori, organizācijas, termiņi) un valdību reģistrs |
| `schemas/valdibas-deklaracija-0.2.xsd` | Deklarācijas teksts |
| `schemas/valdibas-deklaracijas-ricibas-plans-0.2.xsd` | Valdības deklarācijas rīcības plāns: pasākumi, rezultāti, atbildīgie, termiņi, izpildes gaita; katrs pasākums norāda deklarācijas uzdevumu |
| `docs/IDENTIFIKATORI.md` | Identifikatoru veidošanas noteikumi | | `docs/IDENTIFIKATORI.md` | Identifikatoru veidošanas noteikumi |
| `examples/valdibas.xml` | Piecas valdības (2016–2026) | | `tools/validate.py` | Pārbaude: XSD, datņu nosaukumi, identifikatori, saites starp datnēm, kārtības ruļļa 18. un 20. punkts, termiņi |
| `schemas/organizaciju-registrs-0.2.xsd` | Organizāciju reģistrs: institūcijas identifikators (`SS-IIII`: resors + institūcija, ministrija — `SS-0000`), reģistrācijas numurs, nosaukums, saīsinājumi, resors, augstākā iestāde; uztur Valsts kanceleja |
| `examples/organizacijas.xml` | 165 valsts budžeta iestādes (VDVC reģistrs, Valsts kases saraksts 01.09.2023) un 16 citas institūcijas un grupas no MK rīkojuma Nr. 449 (resori 00, 90–93) |
| `tools/organizacijas_no_vdvc.py` | Izveido organizāciju reģistru no VDVC reģistra (`source/organizacijas/`) |
| `examples/lv-dekl-2026-05-28.xml` | A. Kulberga valdības deklarācija, viss teksts, 11 sadaļas, 52 uzdevumi; identifikatori tikai sadaļām un uzdevumiem |
| `examples/lv-mk-2026-05-28.rp.xml` | Valdības rīcības plāns (MK rīkojums Nr. 449, 27.07.2026): 185 pasākumi 52 uzdevumiem, teksts burtiski no likumi.lv |
| `source/ricibas-plans/` | Rīkojuma Nr. 449 avoti: likumi.lv lapa (.mhtml) un PDF |
| `tools/ricibas_plans_no_likumi.py` | Pārveido rīcības plānu no likumi.lv lapas uz XML un salīdzina plāna ailes 1–3 ar deklarāciju |
| `editor/Valdibas_deklaracijas_datukopa.html` | Redaktors vienā HTML datnē: valdības deklarācija (lasīšana, rediģēšana), rīcības plāns — pasākumi pie katra uzdevuma ar CaC ID, institūciju reģistrs („Organizācijas”); projekts, shēmas, apraksts („Par”); eksportē XML v0.2 un Word |
| `source/pdf/` | Avota PDF |
| `source/v0.1/` | Iepriekšējā (v0.1) shēma un dati, no kuriem veidoti piemēri |
| `tools/ids.py` | Identifikatoru veidošana |
| `tools/validate.py` | Pārbaude: XSD, identifikatori, saites starp datnēm, kārtības ruļļa 18. un 20. punkts, termiņi |
| `tools/test_validate.py` | Negatīvie testi pārbaudītājam | | `tools/test_validate.py` | Negatīvie testi pārbaudītājam |
| `tools/ricibas_plans_no_likumi.py` | Pārveido rīcības plānu no likumi.lv lapas uz XML un salīdzina plāna ailes 1–3 ar deklarāciju |
| `tools/organizacijas_no_vdvc.py` | Izveido organizāciju reģistru no VDVC reģistra un Valsts kases saraksta |
| `tools/ids.py` | Identifikatoru veidošana |
| `editor/Valdibas_deklaracijas_datukopa.html` | Redaktors vienā HTML datnē: valdības deklarācija (lasīšana, rediģēšana), rīcības plāns ar CaC ID, institūciju reģistrs, jaunas deklarācijas projekts, shēmas, apraksts; eksportē XML un Word |
| `source/pdf/` | Deklarācijas avota PDF |
| `source/ricibas-plans/` | MK rīkojuma Nr. 449 avoti: likumi.lv lapa (.mhtml) un PDF |
| `source/organizacijas/` | VDVC reģistrs un Valsts kases „Valsts budžeta iestāžu saraksts” (01.09.2023) |
| `source/v0.1/` | Iepriekšējā (v0.1) shēma un dati |
## Pārbaude ## Pārbaude
``` ```
pip install lxml pip install lxml
python3 tools/validate.py # examples/ python3 tools/validate.py # data/
python3 tools/test_validate.py python3 tools/test_validate.py
``` ```
Pārbaudītājs ziņo `E` (kļūda), `W` (brīdinājums), `I` (informācija). Pašreizējie piemēri: 0 kļūdas, 1 brīdinājums — 10 deklarācijas uzdevumiem rīcības plānā ir vairāk nekā pieci pasākumi (kārtības ruļļa 18. punkts). Pārbaudītājs ziņo `E` (kļūda), `W` (brīdinājums), `I` (informācija). Pašreizējie dati: 0 kļūdas, 1 brīdinājums — 10 deklarācijas uzdevumiem rīcības plānā ir vairāk nekā pieci pasākumi (kārtības ruļļa 18. punkts).
## Ko shēma nodrošina ## Ko shēma nodrošina

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- Valdību reģistrs (datu noliktavas dimensijas). Identifikatori: docs/IDENTIFIKATORI.md --> <!-- Valdību reģistrs. Identifikatori: docs/IDENTIFIKATORI.md -->
<GovernmentRegistry xmlns="urn:pppa:cac:valdiba:0.2" schemaVersion="0.2" dataVersion="1" date="2026-10-09"> <GovernmentRegistry xmlns="urn:pppa:cac:valdiba:0.2" schemaVersion="0.2" dataVersion="1" date="2026-10-09">
<Government id="lv-mk-2016-02-11"> <Government id="lv-mk-2016-02-11">
<Label>Māra Kučinska vadītais Ministru kabinets</Label> <Label>Māra Kučinska vadītais Ministru kabinets</Label>

View File

@@ -704,7 +704,7 @@ body.m-org .canvas{max-width:980px}
</xs:schema> </xs:schema>
</script> </script>
<script type="text/xml" id="registrySrc"><?xml version="1.0" encoding="UTF-8"?> <script type="text/xml" id="registrySrc"><?xml version="1.0" encoding="UTF-8"?>
<!-- Valdību reģistrs (datu noliktavas dimensijas). Identifikatori: docs/IDENTIFIKATORI.md --> <!-- Valdību reģistrs. Identifikatori: docs/IDENTIFIKATORI.md -->
<GovernmentRegistry xmlns="urn:pppa:cac:valdiba:0.2" schemaVersion="0.2" dataVersion="1" date="2026-10-09"> <GovernmentRegistry xmlns="urn:pppa:cac:valdiba:0.2" schemaVersion="0.2" dataVersion="1" date="2026-10-09">
<Government id="lv-mk-2016-02-11"> <Government id="lv-mk-2016-02-11">
<Label>Māra Kučinska vadītais Ministru kabinets</Label> <Label>Māra Kučinska vadītais Ministru kabinets</Label>
@@ -4393,7 +4393,7 @@ async function schemaZip(){
const z = new JSZip(); const z = new JSZip();
z.file("schemas/cac-valdiba-kopejie-0.2.xsd", XSD_COMMON); z.file("schemas/valdibas-deklaracija-0.2.xsd", XSD_DECL); z.file("schemas/cac-valdiba-kopejie-0.2.xsd", XSD_COMMON); z.file("schemas/valdibas-deklaracija-0.2.xsd", XSD_DECL);
z.file("schemas/valdibas-deklaracijas-ricibas-plans-0.2.xsd", XSD_PLAN); z.file("schemas/valdibas-deklaracijas-ricibas-plans-0.2.xsd", XSD_PLAN);
z.file("docs/IDENTIFIKATORI.md", IDS_MD); z.file("examples/valdibas.xml", REGISTRY); z.file("schemas/organizaciju-registrs-0.2.xsd", XSD_ORG); z.file("examples/organizacijas.xml", ORG_SRC); z.file("docs/IDENTIFIKATORI.md", IDS_MD); z.file("data/valdibas.xml", REGISTRY); z.file("schemas/organizaciju-registrs-0.2.xsd", XSD_ORG); z.file("data/organizacijas.xml", ORG_SRC);
downloadBlob("valdibas-deklaracija-shemas-0.2.zip", await z.generateAsync({type:"blob"})); toast("Shēmas lejupielādētas"); downloadBlob("valdibas-deklaracija-shemas-0.2.zip", await z.generateAsync({type:"blob"})); toast("Shēmas lejupielādētas");
} }

View File

@@ -1,6 +1,6 @@
"""Izveido organizāciju reģistru (organizaciju-registrs-0.2.xsd) no VDVC reģistra (vdvc-register.xml). """Izveido organizāciju reģistru (organizaciju-registrs-0.2.xsd) no VDVC reģistra (vdvc-register.xml).
python3 tools/organizacijas_no_vdvc.py source/organizacijas/vdvc-register.xml examples/organizacijas.xml python3 tools/organizacijas_no_vdvc.py source/organizacijas/vdvc-register.xml data/organizacijas.xml
Avots — Valsts kases „Valsts budžeta iestāžu saraksts” (01.09.2023; iestades_PAS_VBI_01092023.pdf): iestādes kods (ePlāni un eTāmes), Avots — Valsts kases „Valsts budžeta iestāžu saraksts” (01.09.2023; iestades_PAS_VBI_01092023.pdf): iestādes kods (ePlāni un eTāmes),
nodokļu maksātāja reģistrācijas numurs, nosaukums, ministrijas kods (budžeta resors saskaņā ar gadskārtējo valsts budžeta likumu). nodokļu maksātāja reģistrācijas numurs, nosaukums, ministrijas kods (budžeta resors saskaņā ar gadskārtējo valsts budžeta likumu).

View File

@@ -1,6 +1,6 @@
"""Pārveido Valdības rīcības plānu no likumi.lv lapas (saglabāta kā .mhtml vai .html) uz XML (valdibas-deklaracijas-ricibas-plans-0.2.xsd). """Pārveido Valdības rīcības plānu no likumi.lv lapas (saglabāta kā .mhtml vai .html) uz XML (valdibas-deklaracijas-ricibas-plans-0.2.xsd).
python3 tools/ricibas_plans_no_likumi.py <lapa.mhtml> <deklaracija.xml> <organizacijas.xml> <izvade.xml> python3 tools/ricibas_plans_no_likumi.py source/ricibas-plans/likumi_lv_369925.mhtml data/lv-dekl-2026-05-28.xml data/organizacijas.xml data/lv-mk-2026-05-28.rp.xml
likumi.lv lapā ir četras tabulas: 0 — viss plāns; 1 — rīkojuma 1. pielikums (finansējums rasts); likumi.lv lapā ir četras tabulas: 0 — viss plāns; 1 — rīkojuma 1. pielikums (finansējums rasts);
2 — 2. pielikums (nepieciešams papildu finansējums); 3 — prioritārie pasākumi. 2 — 2. pielikums (nepieciešams papildu finansējums); 3 — prioritārie pasākumi.

View File

@@ -5,7 +5,7 @@
import os, re, shutil, subprocess, sys, tempfile import os, re, shutil, subprocess, sys, tempfile
ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
EX = os.path.join(ROOT, "examples") EX = os.path.join(ROOT, "data")
CASES = [ CASES = [
("pasākums neesošam uzdevumam", "lv-mk-2026-05-28.rp.xml", 'id="lv-mk-2026-05-28.rp.u014.p1" number="14.1." task="lv-dekl-2026-05-28.u014"', 'id="lv-mk-2026-05-28.rp.u099.p1" number="99.1." task="lv-dekl-2026-05-28.u099"', "uzdevums 99 deklarācijā nav"), ("pasākums neesošam uzdevumam", "lv-mk-2026-05-28.rp.xml", 'id="lv-mk-2026-05-28.rp.u014.p1" number="14.1." task="lv-dekl-2026-05-28.u014"', 'id="lv-mk-2026-05-28.rp.u099.p1" number="99.1." task="lv-dekl-2026-05-28.u099"', "uzdevums 99 deklarācijā nav"),
@@ -27,7 +27,7 @@ def run(folder):
def main(): def main():
base = run(EX) base = run(EX)
ok = base.returncode == 0; print(("PASS" if ok else "FAIL") + " piemēri ir derīgi") ok = base.returncode == 0; print(("PASS" if ok else "FAIL") + " dati ir derīgi")
for name, fname, old, new, expect in CASES: for name, fname, old, new, expect in CASES:
d = tempfile.mkdtemp() d = tempfile.mkdtemp()
for f in os.listdir(EX): shutil.copy(os.path.join(EX, f), d) for f in os.listdir(EX): shutil.copy(os.path.join(EX, f), d)

View File

@@ -1,6 +1,6 @@
"""Pārbaudītājs: XSD + identifikatoru noteikumi + saites starp datnēm + kārtības ruļļa noteikumi. """Pārbaudītājs: XSD + identifikatoru noteikumi + saites starp datnēm + kārtības ruļļa noteikumi.
python3 tools/validate.py [mape ar XML datnēm] (noklusējums: examples/) python3 tools/validate.py [mape ar XML datnēm] (noklusējums: data/)
Ziņo: E = kļūda (izejas kods 1), W = brīdinājums, I = informācija. Ziņo: E = kļūda (izejas kods 1), W = brīdinājums, I = informācija.
""" """
@@ -37,6 +37,7 @@ def load(folder):
sc = etree.XMLSchema(etree.parse(os.path.join(ROOT, "schemas", SCHEMAS[name]))) sc = etree.XMLSchema(etree.parse(os.path.join(ROOT, "schemas", SCHEMAS[name])))
if not sc.validate(t): if not sc.validate(t):
for e in sc.error_log: rep("E", f, f"XSD {e.line}: {e.message}") for e in sc.error_log: rep("E", f, f"XSD {e.line}: {e.message}")
if name in ("GovernmentDeclaration", "GovernmentActionPlan") and f != root.get("id") + ".xml": rep("E", f, f"datnes nosaukumam jābūt {root.get('id')}.xml (identifikators)")
docs[name].append((f, root)) docs[name].append((f, root))
return docs return docs
@@ -183,4 +184,4 @@ def main(folder):
if __name__ == "__main__": if __name__ == "__main__":
sys.exit(main(sys.argv[1] if len(sys.argv) > 1 else os.path.join(ROOT, "examples"))) sys.exit(main(sys.argv[1] if len(sys.argv) > 1 else os.path.join(ROOT, "data")))