1
0
Files

200 lines
16 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
MK-Lemumi-as-Code — Ministru kabineta sēde un tās lēmumi kā dati, shēma v0.1
PPP Asociācija (PPPA), Valsts PirmKods. Melnraksts.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="urn:pppa:vpk:mk-lemumi:0.1"
xmlns:m="urn:pppa:vpk:mk-lemumi:0.1"
targetNamespace="urn:pppa:vpk:mk-lemumi:0.1"
elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1" xml:lang="lv">
<xs:annotation>
<xs:documentation xml:lang="lv">
Viena datne — viena Ministru kabineta sēde: darba kārtība (sadaļas un jautājumi ar TAP identifikatoru, ziņotāju un statusu)
un lēmumu teksts pa punktiem — MK sēdes protokollēmums un rīkojums.
Avots — TAP portāls (tapportals.mk.gov.lv). TAP darba kārtību un lēmumu tekstu publicē HTML lapās, nevis mašīnlasāmā formā;
šī shēma tos apraksta kā datus. Punkta teksts (Text) ir burtiski kā TAP. Darbības veids (kind), adresāti (Party) un termiņš
(Deadline) ir izgūti no teksta ar noteikumiem (tools/derive.py) — tās ir norādes, juridiski saistošs ir teksts.
Lēmuma teksta statuss: draft — protokollēmuma vai rīkojuma projekts, kā pievienots darba kārtībai sēdes dienā; final — teksts
no publicētā sēdes protokola. Sēdē projektu var grozīt, tāpēc draft aizstāj ar final, kad protokols publicēts.
Ierobežotas pieejamības (IP) jautājumiem TAP publisks ir tikai protokollēmums; ziņojums nav publisks un šeit nav iekļauts.
Identifikatori:
sēde lv-mk-sede-GGGG-MM-DD (otra sēde tajā pašā dienā — lv-mk-sede-GGGG-MM-DD-2)
jautājums &lt;sēde&gt;.q&lt;numurs darba kārtībā&gt; lv-mk-sede-2026-10-13.q2.1
lēmums &lt;jautājums&gt;.pl (protokollēmums) | .rik (rīkojums) | .doc&lt;N&gt; (cits)
punkts &lt;lēmums&gt;.p&lt;numurs&gt; (apakšpunkts .p2.1); nenumurēts teksta lauks — .u&lt;kārtas numurs&gt;
Institūcijas — VPK ID no Valsts institūciju reģistra (Organizations_register); pašvaldības — ATVK kods (Pasvaldibu-registrs).
Valdība — identifikators no valdību reģistra (Valdibas-Deklaracija-as-Code data/valdibas.xml).
</xs:documentation>
</xs:annotation>
<xs:simpleType name="NonEmptyText"><xs:restriction base="xs:string"><xs:minLength value="1"/><xs:pattern value="[\s\S]*\S[\s\S]*"/></xs:restriction></xs:simpleType>
<xs:simpleType name="MeetingId"><xs:restriction base="xs:string"><xs:pattern value="lv-mk-sede-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?"/></xs:restriction></xs:simpleType>
<xs:simpleType name="ElementId"><xs:restriction base="xs:string"><xs:pattern value="lv-mk-sede-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.q[0-9]+(\.[0-9]+)*(\.(pl|rik|doc[0-9]+)(\.(p[0-9]+(\.[0-9]+)*|u[0-9]+))*)?"/></xs:restriction></xs:simpleType>
<xs:simpleType name="TapId"><xs:restriction base="xs:string"><xs:pattern value="[0-9]{2}-TA-[0-9]+[A-Za-z]*"/></xs:restriction></xs:simpleType>
<xs:simpleType name="OrgId"><xs:restriction base="xs:string"><xs:pattern value="[0-9]{2}-[0-9]{4}"/></xs:restriction></xs:simpleType>
<xs:simpleType name="AtvkCode"><xs:restriction base="xs:string"><xs:pattern value="[0-9]{7}"/></xs:restriction></xs:simpleType>
<xs:simpleType name="GovernmentId"><xs:restriction base="xs:string"><xs:pattern value="lv-mk-[0-9]{4}-[0-9]{2}-[0-9]{2}"/></xs:restriction></xs:simpleType>
<xs:simpleType name="Uuid"><xs:restriction base="xs:string"><xs:pattern value="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"/></xs:restriction></xs:simpleType>
<xs:simpleType name="Sha256"><xs:restriction base="xs:string"><xs:pattern value="[0-9a-f]{64}"/></xs:restriction></xs:simpleType>
<xs:simpleType name="PointKind">
<xs:annotation><xs:documentation xml:lang="lv">
note — pieņemt zināšanai; adopt — pieņemt (projektu); approve — apstiprināt; support / reject — atbalstīt / neatbalstīt;
invite — aicināt; task — uzdevums institūcijai („Ekonomikas ministrijai … iesniegt”, „uzdot”); allocate — piešķirt;
permit — atļaut; authorise — pilnvarot; determine — noteikt, atzīt; amend — izteikt, papildināt, svītrot, grozīt;
repeal — atzīt par spēku zaudējušu, atcelt; transfer — nodot, pārņemt; purchase — pirkt; establish — izveidot;
appoint / dismiss — iecelt / atbrīvot; part — apakšpunkts, kas turpina augstākā punkta teikumu;
provision — cits noteikums bez darbības vārda.
</xs:documentation></xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="note"/><xs:enumeration value="adopt"/><xs:enumeration value="approve"/><xs:enumeration value="support"/>
<xs:enumeration value="reject"/><xs:enumeration value="invite"/><xs:enumeration value="task"/><xs:enumeration value="allocate"/>
<xs:enumeration value="permit"/><xs:enumeration value="authorise"/><xs:enumeration value="determine"/><xs:enumeration value="amend"/>
<xs:enumeration value="repeal"/><xs:enumeration value="transfer"/><xs:enumeration value="purchase"/><xs:enumeration value="establish"/>
<xs:enumeration value="appoint"/><xs:enumeration value="dismiss"/><xs:enumeration value="part"/><xs:enumeration value="provision"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="CabinetMeeting">
<xs:complexType>
<xs:sequence>
<xs:element name="Metadata" type="MetadataType"/>
<xs:element name="Section" type="SectionType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="MeetingId" use="required"/>
<xs:attribute name="government" type="GovernmentId" use="required"/>
<xs:attribute name="schemaVersion" type="xs:string" use="required" fixed="0.1"/>
</xs:complexType>
<xs:key name="itemKey"><xs:selector xpath="m:Section/m:Item"/><xs:field xpath="@id"/></xs:key>
<xs:key name="decisionKey"><xs:selector xpath="m:Section/m:Item/m:Decision"/><xs:field xpath="@id"/></xs:key>
<xs:key name="pointKey"><xs:selector xpath=".//m:Point"/><xs:field xpath="@id"/></xs:key>
</xs:element>
<xs:complexType name="MetadataType">
<xs:sequence>
<xs:element name="Title" type="NonEmptyText"/>
<xs:element name="Start" type="xs:dateTime"/>
<xs:element name="Kind">
<xs:simpleType><xs:restriction base="xs:string"><xs:enumeration value="regular"/><xs:enumeration value="extraordinary"/></xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="Protocol" minOccurs="0">
<xs:annotation><xs:documentation xml:lang="lv">Sēdes protokola numurs, kad protokols publicēts.</xs:documentation></xs:annotation>
<xs:complexType><xs:sequence><xs:element name="Url" type="xs:anyURI" minOccurs="0"/></xs:sequence>
<xs:attribute name="number" type="xs:positiveInteger" use="required"/></xs:complexType>
</xs:element>
<xs:element name="Source">
<xs:complexType><xs:sequence>
<xs:element name="Url" type="xs:anyURI"/>
<xs:element name="SHA256" type="Sha256"><xs:annotation><xs:documentation xml:lang="lv">Darba kārtības lapas (HTML) sha256 ielādes brīdī.</xs:documentation></xs:annotation></xs:element>
<xs:element name="Retrieved" type="xs:dateTime"/>
</xs:sequence></xs:complexType>
</xs:element>
<xs:element name="DataVersion" maxOccurs="unbounded">
<xs:complexType><xs:sequence><xs:element name="Change" type="NonEmptyText" maxOccurs="unbounded"/></xs:sequence>
<xs:attribute name="number" type="xs:positiveInteger" use="required"/>
<xs:attribute name="date" type="xs:date" use="required"/></xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SectionType">
<xs:sequence>
<xs:element name="Title" type="NonEmptyText"/>
<xs:element name="Item" type="ItemType" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="n" type="xs:positiveInteger" use="required"/>
<xs:attribute name="closed" type="xs:boolean" use="required"><xs:annotation><xs:documentation xml:lang="lv">Slēgtā daļa (sadaļas nosaukumā „slēgtā daļa”).</xs:documentation></xs:annotation></xs:attribute>
</xs:complexType>
<xs:complexType name="ItemType">
<xs:sequence>
<xs:element name="Title" type="NonEmptyText"><xs:annotation><xs:documentation xml:lang="lv">Jautājums, kā darba kārtībā, bez norādēm iekavās (tās — atribūtos).</xs:documentation></xs:annotation></xs:element>
<xs:element name="ActType" type="NonEmptyText" minOccurs="0"><xs:annotation><xs:documentation xml:lang="lv">Projekta veids TAP (Rīkojuma projekts, Informatīvais ziņojums …).</xs:documentation></xs:annotation></xs:element>
<xs:element name="Responsible" minOccurs="0">
<xs:annotation><xs:documentation xml:lang="lv">Atbildīgā institūcija TAP; org — VPK ID, ja atrasts reģistrā.</xs:documentation></xs:annotation>
<xs:complexType><xs:simpleContent><xs:extension base="NonEmptyText"><xs:attribute name="org" type="OrgId"/></xs:extension></xs:simpleContent></xs:complexType>
</xs:element>
<xs:element name="Presenter" type="NonEmptyText" minOccurs="0"><xs:annotation><xs:documentation xml:lang="lv">Ziņo, kā darba kārtībā.</xs:documentation></xs:annotation></xs:element>
<xs:element name="Invited" type="NonEmptyText" minOccurs="0"/>
<xs:element name="LegalAct" minOccurs="0">
<xs:complexType><xs:sequence><xs:element name="Url" type="xs:anyURI"/></xs:sequence>
<xs:attribute name="uuid" type="Uuid" use="required"/></xs:complexType>
</xs:element>
<xs:element name="Document" minOccurs="0" maxOccurs="unbounded">
<xs:annotation><xs:documentation xml:lang="lv">Dokuments darba kārtībā, kā TAP (nosaukums un saite).</xs:documentation></xs:annotation>
<xs:complexType><xs:simpleContent><xs:extension base="NonEmptyText"><xs:attribute name="url" type="xs:anyURI" use="required"/></xs:extension></xs:simpleContent></xs:complexType>
</xs:element>
<xs:element name="Approval" type="NonEmptyText" minOccurs="0" maxOccurs="unbounded"><xs:annotation><xs:documentation xml:lang="lv">Saskaņojumi (institūciju saīsinājumi), kā TAP.</xs:documentation></xs:annotation></xs:element>
<xs:element name="PublicParticipation" type="NonEmptyText" minOccurs="0"/>
<xs:element name="Decision" type="DecisionType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="ElementId" use="required"/>
<xs:attribute name="n" type="NonEmptyText" use="required"/>
<xs:attribute name="tap" type="TapId"/>
<xs:attribute name="restricted" type="xs:boolean" default="false"><xs:annotation><xs:documentation xml:lang="lv">Ierobežotas pieejamības (IP).</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="status" type="NonEmptyText" use="required"><xs:annotation><xs:documentation xml:lang="lv">Statuss darba kārtībā: Pieņemts, Atlikts, Izskatīts …</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="addedLate" type="xs:boolean" default="false"><xs:annotation><xs:documentation xml:lang="lv">„iekļauts papildus”.</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="movedToA" type="xs:boolean" default="false"><xs:annotation><xs:documentation xml:lang="lv">„jautājums tiks skatīts A sadaļā”.</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="postponed" type="xs:boolean" default="false"><xs:annotation><xs:documentation xml:lang="lv">„jautājuma izskatīšana atlikta”.</xs:documentation></xs:annotation></xs:attribute>
</xs:complexType>
<xs:complexType name="DecisionType">
<xs:sequence>
<xs:element name="Heading" type="NonEmptyText" minOccurs="0" maxOccurs="unbounded">
<xs:annotation><xs:documentation xml:lang="lv">Rindas virs virsraksta, kā TAP: „Ministru kabineta rīkojums Nr. 631”, „Rīgā … (prot. Nr. 58 8. §)”.
Projektā datums vēl nav ievietots (TAP veidnes lauks paliek kā lapā).</xs:documentation></xs:annotation>
</xs:element>
<xs:element name="Title" type="NonEmptyText" minOccurs="0"/>
<xs:element name="Url" type="xs:anyURI"/>
<xs:element name="SourceFile" type="NonEmptyText"><xs:annotation><xs:documentation xml:lang="lv">sources/… — teksts, kā TAP lapā (numurs un teksts pa rindām).</xs:documentation></xs:annotation></xs:element>
<xs:element name="SHA256" type="Sha256"><xs:annotation><xs:documentation xml:lang="lv">Lapas (HTML) sha256 ielādes brīdī.</xs:documentation></xs:annotation></xs:element>
<xs:element name="Point" type="PointType" maxOccurs="unbounded"/>
<xs:element name="Annex" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:simpleContent><xs:extension base="NonEmptyText"><xs:attribute name="n" type="xs:string"/></xs:extension></xs:simpleContent></xs:complexType>
</xs:element>
<xs:element name="Signatory" type="NonEmptyText" minOccurs="0" maxOccurs="unbounded"><xs:annotation><xs:documentation xml:lang="lv">Paraksta rinda, kā TAP („Ministru prezidents A. Kulbergs”).</xs:documentation></xs:annotation></xs:element>
</xs:sequence>
<xs:attribute name="id" type="ElementId" use="required"/>
<xs:attribute name="actNumber" type="xs:positiveInteger"><xs:annotation><xs:documentation xml:lang="lv">Rīkojuma numurs no virsraksta rindas („rīkojums Nr. 631”).</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="protocol" type="xs:positiveInteger"><xs:annotation><xs:documentation xml:lang="lv">Sēdes protokola numurs no virsraksta rindas („prot. Nr. 58”).</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="paragraph" type="xs:positiveInteger"><xs:annotation><xs:documentation xml:lang="lv">Protokola paragrāfs („8. §”).</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="document" type="NonEmptyText" use="required"><xs:annotation><xs:documentation xml:lang="lv">Dokumenta nosaukums TAP (MK sēdes protokollēmuma projekts, Rīkojuma projekts …).</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="textStatus" use="required">
<xs:simpleType><xs:restriction base="xs:string"><xs:enumeration value="draft"/><xs:enumeration value="final"/></xs:restriction></xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="PointType">
<xs:sequence>
<xs:element name="Text" type="NonEmptyText"/>
<xs:element name="Quote" type="NonEmptyText" minOccurs="0" maxOccurs="unbounded">
<xs:annotation><xs:documentation xml:lang="lv">Jaunā redakcija pēdiņās, kas punktā ir atsevišķā teksta laukā („Izteikt 1. punktu šādā redakcijā: "1. …"”).</xs:documentation></xs:annotation>
</xs:element>
<xs:element name="Party" minOccurs="0" maxOccurs="unbounded">
<xs:annotation><xs:documentation xml:lang="lv">Institūcija vai pašvaldība, kas punktā minēta datīvā (kam uzdots, atļauts, piešķirts); teksts — kā punktā.
role: institution — institūcija, minister — ministrs (org — ministrijas VPK ID), municipality — pašvaldība (atvk).</xs:documentation></xs:annotation>
<xs:complexType><xs:simpleContent><xs:extension base="NonEmptyText">
<xs:attribute name="role" use="required"><xs:simpleType><xs:restriction base="xs:string">
<xs:enumeration value="institution"/><xs:enumeration value="minister"/><xs:enumeration value="municipality"/>
</xs:restriction></xs:simpleType></xs:attribute>
<xs:attribute name="org" type="OrgId"/>
<xs:attribute name="atvk" type="AtvkCode"/>
</xs:extension></xs:simpleContent></xs:complexType>
</xs:element>
<xs:element name="Deadline" minOccurs="0">
<xs:complexType><xs:simpleContent><xs:extension base="NonEmptyText"><xs:attribute name="date" type="xs:date" use="required"/></xs:extension></xs:simpleContent></xs:complexType>
</xs:element>
<xs:element name="Point" type="PointType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="ElementId" use="required"/>
<xs:attribute name="n" type="xs:string" use="required"><xs:annotation><xs:documentation xml:lang="lv">Drukātais numurs („2.”, „2.1.”); nenumurētam — tukšs.</xs:documentation></xs:annotation></xs:attribute>
<xs:attribute name="kind" type="PointKind" use="required"/>
</xs:complexType>
</xs:schema>