You've already forked VARAM_classification_schema
Import UAPF package
229 lines
11 KiB
Markdown
229 lines
11 KiB
Markdown
# VDVC — Valsts dokumentu vadības klasifikators
|
|
|
|
**VARAM dokumentu vadības klasifikācijas shēma** — mašīnlasāms klasifikācijas shēmas formāts DVS Namejs dokumentu vadības sistēmai.
|
|
|
|
**Repozitorijs:** `processgit.org/VARAM/Document_classification_schema/`
|
|
**Nosaukumtelpa:** `urn:vdvc:classification:2026`
|
|
**Normatīvais pamats:** MK noteikumi Nr. 282 (07.05.2024.)
|
|
**Datums:** 2026. gada februāris
|
|
|
|
---
|
|
|
|
## 1. Novērtējums — kas konstatēts Excel failā
|
|
|
|
647 kodēti ieraksti, 3 domēni (P — Pārvalde, I1 — Investīciju programmas, I2 — Investīciju projekti). Dati satur problēmas divos līmeņos.
|
|
|
|
### Datu kvalitātes problēmas
|
|
|
|
| Problēma | Skaits | Piemērs |
|
|
|-----------|--------|---------|
|
|
| Jaukti kodu atdalītāji (- un .) | 221 kodi | `I1-1-7.1.1` jauc abus |
|
|
| NBSP maskēts kā tukšs | 93 rindas | Glabāšana = `\xa0`, nevis tukšs |
|
|
| 50+ glabāšanas termiņu varianti | visi | "Pastāvīgi", "Patstāvīgi", "5gadi", "31.12.2034.", "2031-12-31 00:00:00" |
|
|
| Apraksti pilnībā trūkst | 100% | E kolonna pilnībā tukša |
|
|
| Vairāki departamenti kā brīvs teksts | 67 rindas | "IPD, VIKTAD, VIAPD" |
|
|
| Dati nepareizā līmeņa kolonnā | 64 rindas | L2 teksts L3 kolonnā |
|
|
| Drukas kļūda `Il-9-2` (mazais L) | 1 rinda | Jābūt `I1-9-2` |
|
|
|
|
### Klasifikācijas struktūras problēmas
|
|
|
|
**Shēma ir pārmērīgi sarežģīta, jo normatīvo dokumentu izcelsme tiek izmantota kā strukturālie līmeņi, nevis metadati.**
|
|
|
|
MK Nr. 282 §33 nosaka klasificēt pēc **funkcijām → procesiem → darbībām**. Tā vietā VARAM izveido jaunu koka zaru katram ES projektam un katram sarakstēšanās auditorijas tipam.
|
|
|
|
**I2 — sliktākais gadījums:** 33 atsevišķas grupas (I2-1 līdz I2-33), katra ir konkrēts ES finansēts projekts, katrā identiskas apakškategorijas (korespondence, līgumi, rīkojumi, komunikācija). Tas ir ~130 ieraksti, kas veic ~4 ierakstu + `projectRef` taga darbu.
|
|
|
|
**I1 — tāds pats modelis:** 13 programmu grupas ar atkārtojošām apakšstruktūrām. 227 ieraksti → varētu būt ~45 ar programmu kā metadatiem.
|
|
|
|
**P-1-13 — sarakste:** 9 apakštipi, kas atšķiras tikai pēc auditorijas (valsts iestādes, ārvalstu, iekšējā, klasificēta u.c.). Vajadzētu būt 1 kategorijai ar auditorijas metadatiem.
|
|
|
|
**Rezultāts:** lietvedis saskaras ar ~493 lapu kategorijām, nevis ~159 funkcionālām.
|
|
|
|
### Ko MK Nr. 282 faktiski prasa
|
|
|
|
| §33 līmenis | Kam jāsatur | Ko VARAM pašlaik lieto |
|
|
|-------------|-------------|----------------------|
|
|
| L1: Funkcija | "Investīciju projektu ieviešana" | ✓ Pareizi (I2) |
|
|
| L2: Process | "Korespondence", "Līgumi", "Protokoli" | ✗ Tā vietā 33 projektu nosaukumi |
|
|
| L3: Darbība | Konkrēti dokumentu tipi | ✗ Vispārīgi dok. tipi, kas atkārtojas 33× |
|
|
|
|
### Risinājums
|
|
|
|
Pārvietot projekta/programmas identitāti no **koka struktūras** uz **metadatu tagiem**. Dokuments joprojām zina, kuram projektam tas pieder — bet klasifikācijas koks paliek pārvaldāms.
|
|
|
|
| Pašreizējā I2 (V1) | Ierosinātā I2 (V2) |
|
|
|-----------|------------|
|
|
| I2-1 Projekta "IS..." dokumenti | 3.1 Korespondence |
|
|
| I2-1-1 Korespondence | 3.2 Līgumi un akti |
|
|
| I2-1-2 Līgumi | 3.3 Rīkojumi un protokoli |
|
|
| I2-1-3 Rīkojumi | 3.4 Komunikācijas materiāli |
|
|
| I2-1-4 Komunikācija | *Katrs atzīmēts ar projectRef* |
|
|
| I2-2 Projekta "Atvērtie dati..." | *un programmeRef metadatiem* |
|
|
| I2-2-1 Korespondence | |
|
|
| ... ×33 projekti ... | |
|
|
| **132 ieraksti** | **4 ieraksti + 33 projektu tagi** |
|
|
|
|
---
|
|
|
|
## 2. Kas izveidots — divas versijas
|
|
|
|
### Salīdzinājums
|
|
|
|
| | V1 (pašreizējā) | V2 (ierosinātā) |
|
|
|---|---|---|
|
|
| **Pieeja** | 1:1 no Excel, normalizēta | Funkcionāla pārstrukturēšana pēc MK Nr. 282 §33 |
|
|
| **Kategorijas** | 493 lapu kategorijas | 159 (132 + 45 + 4) |
|
|
| **I2 projekti** | 33 grupas × 4 apakškat. = 132 | 4 funkcionālas + 33 projektu tagi |
|
|
| **I1 programmas** | 13 grupas × ~17 apakškat. = 227 | 45 funkcionālas + 13 programmu tagi |
|
|
| **Sarakste** | 9 auditoriju apakškategorijas | 1 kategorija + 9 auditoriju tagi |
|
|
| **Glabāšana** | 50+ brīvā teksta varianti | 5 strukturēti tipi + nosacījumu noteikumi |
|
|
| **Numerācija** | P-1-13-4, I1-1-1.2, Il-9-2 | 1.1.13, 2.1.2, 3.1 (tīra ciparu) |
|
|
| **MCP** | Nē | Jā |
|
|
|
|
**V1 (pašreizējā):** uzticīga 1:1 Excel transformācija. Tie paši kodi, tā pati hierarhija — bet iztīrīti dati (normalizēti glabāšanas termiņi, izlaboti kodi, pareiza struktūra). To var ieviest DVS nekavējoties bez procesu maiņas.
|
|
|
|
**V2 (ierosinātā):** pārstrukturēta pēc funkcijām saskaņā ar MK Nr. 282. 159 kategorijas, nevis 493. Projekti un programmas kā metadatu tagi. Labāka lietvedim, labāka DVS, labāka AI klasifikācijai.
|
|
|
|
**Viens XSD abām** — V1 vienkārši neizmanto metadatu iespējas (programmeRef, projectRef). V2 tās izmanto, lai likvidētu strukturālo dublēšanos.
|
|
|
|
---
|
|
|
|
## 3. Repozitorija struktūra
|
|
|
|
```
|
|
VARAM/Document_classification_schema/
|
|
├── processgit.mcp.yaml ProcessGit MCP trigeris — ieslēdz /VARAM/Document_classification_schema/mcp
|
|
├── processgit.viewer.json ProcessGit skatītāja trigeris — atveido index.html repo labajā panelī
|
|
├── vdvc-classification.xsd XSD shēma (abām V1 un V2)
|
|
├── classification-v1-asis.xml V1: 493 kategorijas, oriģinālā struktūra
|
|
├── classification-v2-proposed.xml V2: 159 kategorijas, funkcionāla
|
|
├── vocabularies.xml Kontrolētas vārdnīcas (departamenti, programmas, projekti, auditorijas)
|
|
├── migration-mapping.csv V1→V2 pārejas tabula (355 rindas)
|
|
├── index.html GUI redaktors (rāda V1, rediģē V2)
|
|
└── README.md Šis fails
|
|
```
|
|
|
|
---
|
|
|
|
## 4. Projektēšanas lēmumi
|
|
|
|
### Metadatu identifikatori
|
|
- **Programmu kodi** izmanto iekšējos ID (`PRG-001`..`PRG-013`), nevis ES kodus
|
|
- **Projektu kodi** izmanto iekšējos ID (`PRJ-001`..`PRJ-033`), nevis ES projektu numurus
|
|
- **Departamentu kodi** (piem., `IPD`, `LN`) ir vārdnīcu failā ar šķērsatsauces vietu uz VARAM Organizāciju reģistru
|
|
|
|
### V1 normalizācija
|
|
- Jauktie atdalītāji normalizēti (punkti→defises: `P-1-18.1` → `P-1-18-1`). `Il` drukas kļūda → `I1`.
|
|
- 93 NBSP glabāšanas vērtības uzskatītas par tukšām (elements izlaists)
|
|
|
|
### V2 pārstrukturēšana
|
|
- **Sarakste (P-1-13):** 9 apakštipi apvienoti vienā kategorijā (`1.1.13`) ar `retentionRule` elementiem katrai auditorijai. Dažādi glabāšanas termiņi saglabāti kā nosacījumu noteikumi.
|
|
- **Programmu/projektu glabāšana:** vienmēr uz kategorijas+programmas/projekta kombināciju. Noklusējuma glabāšana uz kategorijas, pārrakstīšana caur `retentionRule`.
|
|
- **Tīra numerācija:** domēni `1` (Pārvalde), `2` (Programmu vadība), `3` (Projektu ieviešana). Punktu atdalītāji: `1.1.13`, `2.3.1`, `3.2`.
|
|
|
|
### GUI
|
|
- Rāda V1 (tikai lasīšanai), rediģē V2
|
|
- Lejupielādēt XML manuālai augšupielādei (MVP)
|
|
|
|
### MCP
|
|
- Tikai V2 — `processgit.mcp.yaml` norāda `classification-v2-proposed.xml` un `vocabularies.xml`
|
|
- Tīra normalizēta struktūra `generate_document` izvadē
|
|
|
|
---
|
|
|
|
## 5. Glabāšanas termiņu normalizācija
|
|
|
|
50+ brīvā teksta varianti → 5 strukturēti XML tipi:
|
|
|
|
| Tips | XML elements | Oriģinālais piemērs |
|
|
|------|-------------|-------------------|
|
|
| Pastāvīgi | `<permanent/>` | "Pastāvīgi", "Patstāvīgi" |
|
|
| Ilgums | `<duration years="5"/>` | "5 gadi" |
|
|
| Ilgums ar trigeri | `<duration years="5" trigger="project_closure"/>` | "5 gadi pēc projekta noslēguma pārskata apstiprināšanas" |
|
|
| Fiksēts datums | `<fixedDate>2034-12-31</fixedDate>` | "31.12.2034.", "2031-12-31" |
|
|
| Fiksēts datums (EK) | `<fixedDate euCommission="true">2032-12-31</fixedDate>` | "31.12.2032. EK" |
|
|
|
|
Papildus speciālie tipi: `<untilReplaced/>` (līdz nomaiņai), `<untilNoLongerNeeded/>` (līdz beidzas nepieciešamība).
|
|
|
|
Trigeru tipi: `creation` (izveide), `project_closure` (projekta noslēgums), `programme_closure` (programmas noslēgums), `contract_end` (līguma beigas), `employment_end` (darba attiecību izbeigšana), `replacement` (nomaiņa), `assessment` (novērtēšana), `last_debt_cleared` (pēdējā parāda dzēšana), `description_complete` (dokumentu aprakstīšana), `procurement_execution` (iepirkuma izpilde), `procurement_signing` (iepirkuma noslēgšana), `disciplinary_decision` (disciplinārlēmums).
|
|
|
|
---
|
|
|
|
## 6. V2 nosacījumu glabāšana (retentionRule)
|
|
|
|
Kad kategorijas glabāšanas termiņš ir atkarīgs no metadatiem (auditorija, programma, projekts), V2 izmanto `retentionRule` elementus:
|
|
|
|
```xml
|
|
<vdvc:category code="3.1">
|
|
<vdvc:name>Korespondence</vdvc:name>
|
|
<!-- Noklusējums: 5 gadi pēc projekta noslēguma -->
|
|
<vdvc:retention>
|
|
<vdvc:duration years="5" trigger="project_closure"/>
|
|
</vdvc:retention>
|
|
<!-- Pārrakstīšana PRJ-002: fiksēts datums -->
|
|
<vdvc:retentionRule label="Green LUPO">
|
|
<vdvc:condition><vdvc:projectRef>PRJ-002</vdvc:projectRef></vdvc:condition>
|
|
<vdvc:retention><vdvc:fixedDate>2034-04-30</vdvc:fixedDate></vdvc:retention>
|
|
</vdvc:retentionRule>
|
|
<vdvc:requiresTag type="project" required="true"/>
|
|
</vdvc:category>
|
|
```
|
|
|
|
Izšķiršanas secība: konkrēts projekta/programmas/auditorijas noteikums → noklusējuma glabāšana.
|
|
|
|
---
|
|
|
|
## 7. ProcessGit integrācija
|
|
|
|
### MCP galapunkts
|
|
|
|
`processgit.mcp.yaml` repozitorija saknē aktivizē MCP serveri:
|
|
```
|
|
https://processgit.org/VARAM/Document_classification_schema/mcp
|
|
```
|
|
|
|
Deklarētie avoti:
|
|
- `classification-v2-proposed.xml` — kategorijas, grupas, domēni, glabāšanas noteikumi
|
|
- `vocabularies.xml` — departamenti, programmas, projekti, auditorijas
|
|
|
|
Pieejamie rīki: `search`, `get_entity`, `list_entities`, `describe_model`, `generate_document`, `validate`, `help`, `identify`.
|
|
|
|
### Pielāgots skatītājs
|
|
|
|
`processgit.viewer.json` repozitorija saknē atveido `index.html` kā pielāgotu skatītāju repo labajā panelī. Skatītājs nodrošina GUI redaktoru tieši ProcessGit vidē — lietvedis var pārlūkot un rediģēt klasifikācijas shēmu bez atsevišķas lietojumprogrammas.
|
|
|
|
Skatītāja sasaiste (`viewers` masīvā):
|
|
- **primary_pattern:** `classification-v2-proposed.xml` — aktivizējas, kad lietotājs atver šo failu
|
|
- **entry:** `index.html` — HTML fails, kas tiek ielādēts iframe
|
|
- **edit_allow:** `classification-v2-proposed.xml`, `vocabularies.xml` — faili, kurus drīkst saglabāt atpakaļ
|
|
- **targets:** XSD shēma, V1 un V2 XML, vārdnīcas — papildu faili, ko skatītājs var nolasīt
|
|
|
|
---
|
|
|
|
## 8. Migrācija no V1 uz V2
|
|
|
|
Izmantojiet `migration-mapping.csv` automatizētai dokumentu pārklasifikācijai:
|
|
|
|
```csv
|
|
v1_code,v1_name,v2_code,v2_name,tag_type,tag_id,notes
|
|
I2-2-1,"Korespondence",3.1,Korespondence,project,PRJ-002,
|
|
I2-2-2,"Līgumi...",3.2,Līgumi un akti,project,PRJ-002,
|
|
P-1-13-1,"Sarakste ar republikas...",1.1.13,Sarakste,audience,republic-orgs,conditional retention
|
|
```
|
|
|
|
Migrācijas soļi:
|
|
1. Atrast `v1_code` CSV failā
|
|
2. Piešķirt `v2_code` kā jauno klasifikāciju
|
|
3. Pievienot `tag_type`:`tag_id` kā dokumenta metadatus
|
|
4. Aprēķināt glabāšanas termiņu no V2 kategorijas + taga kombinācijas
|
|
|
|
---
|
|
|
|
## 9. Nosaukumtelpa un juridiskais pamats
|
|
|
|
**Nosaukumtelpa:** `urn:vdvc:classification:2026` (prefikss `vdvc:`)
|
|
|
|
**Normatīvais pamats:**
|
|
- **MK noteikumi Nr. 282** (20.04.2012., grozījumi 07.05.2024.) — "Noteikumi par dokumentu izstrādāšanu un noformēšanu" §33: klasifikācijas shēmai jābūt balstītai uz dokumentu funkcijām.
|
|
- **VARAM iekšējie noteikumi** — pašreizējā klasifikācijas shēma apstiprināta ar ministrijas rīkojumu.
|