Jauni likumi (16): Publiskās un privātās partnerības likums; Publiskas personas kapitāla daļu un kapitālsabiedrību pārvaldības likums; Augstskolu; Valsts valodas; Muzeju; Par ietekmes uz vidi novērtējumu; Sociālo pakalpojumu un sociālās palīdzības; Būvniecības; Maksātnespējas; Valsts kultūrkapitāla fonda; Jūrlietu pārvaldes un jūras drošības (lv-lik-2002-10-31-2); Latvijas vides aizsardzības fonda; Publisko iepirkumu; Zinātniskās darbības; Par darbinieku aizsardzību darba devēja maksātnespējas gadījumā; Par piesārņojumu. validate: 58/58 OK. Shēma (saderīga paplašināšana, datu līgums tāpat): - sadaļa virs nodaļām: Chapter kind="division", ID …sA - pants, kas vēl nav spēkā: status="pending", bez teksta - ID: art…[a-z] (644¹⁸A), ann…sN (1.¹ pielikums) Konvertors: pielikumi (Annex, ieskaitot tabulas rindas; pilnības skaitā); tās pašas dienas likumi → -2; „8.pants” bez punkta; „48.¹” pārejas noteikumos; virsraksts ar izslēgšanas piezīmi; Augstākās Padomes paraksti; noslēgums netiek skaitīts XML pusē (iepriekš mazos likumos >101 %). Neielādēti (vecā struktūra, nākamais darbs): Civilprocesa likums, Satversme, Par policiju, Par Latvijas Nacionālo bibliotēku. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016igpMJBtapmG6vHE4vSF9q
457 lines
13 KiB
YAML
457 lines
13 KiB
YAML
# ODCS v3 datu līgums: B20 Latvijas Republikas likumi
|
|
# Ģenerēts no schemas/likumi-0.1.xsd (tools/xsd_to_odcs.py, lakehouse). Shēmas daļu nelabot ar roku — labot XSD un ģenerēt no jauna.
|
|
apiVersion: v3.0.2
|
|
kind: DataContract
|
|
id: urn:pppa:cac:contract:B20
|
|
name: Latvijas Republikas likumi
|
|
version: 0.1.0
|
|
status: active
|
|
domain: Valsts kā kods (Country as Code)
|
|
dataProduct: Likumi kā dati
|
|
tenant: PPP Asociācija (PPPA)
|
|
description:
|
|
purpose: Latvijas Republikas likumi vienā datu struktūrā — rekvizīti, redakcija un iestrādātie grozījumi, nodaļas, panti, daļas, punkti ar statusu
|
|
(spēkā / izslēgts) un redakcijas atzīmēm, pārejas noteikumi, ES atsauces ar CELEX, spēkā stāšanās, pieņemšana, izsludināšana un parakstītāji.
|
|
usage: Mašīnlasāma datu apmaiņa; ielāde datu ezerā katru dienu.
|
|
limitations: Avots — likumi.lv konsolidētā teksta Word datne; konvertors tekstu nelabo (avotā salipušie vārdi paliek). Juridiski saistošs ir
|
|
oficiālajā izdevumā publicētais teksts. Vienības veids (kind) — apraksta birka, nav juridiska kvalifikācija.
|
|
servers:
|
|
- server: processgit
|
|
type: custom
|
|
format: xml
|
|
description: ProcessGit repozitorijs (Gitea API v1)
|
|
customProperties:
|
|
- property: url
|
|
value: https://processgit.org/Valsts-Pirmkods/Likums-as-Code
|
|
- property: ref
|
|
value: main
|
|
- property: path
|
|
value: data/lv-lik-*.xml
|
|
- property: schema
|
|
value: https://processgit.org/Valsts-Pirmkods/Likums-as-Code/src/branch/main/schemas/likumi-0.1.xsd
|
|
schema:
|
|
- name: Law
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Law
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?
|
|
primaryKey: true
|
|
unique: true
|
|
- name: schemaVersion
|
|
logicalType: string
|
|
required: true
|
|
- name: EnactingFormula
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: InForceStatement
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Adoption
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Promulgation
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Signatory
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
- name: Signatory@role
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_law
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_amendment
|
|
- property: lakehouseTable
|
|
value: cac_silver.law
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_amendment
|
|
- name: Chapter
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Chapter
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: n
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: kind
|
|
logicalType: string
|
|
required: true
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- general
|
|
- substantive
|
|
- final
|
|
- none
|
|
- division
|
|
- name: Title
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Note
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_chapter
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_chapter
|
|
- name: Article
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Article
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: n
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: status
|
|
logicalType: string
|
|
required: false
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- in_force
|
|
- deleted
|
|
- pending
|
|
- name: Heading
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Text
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Note
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_unit
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_unit
|
|
- name: Part
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Part
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: n
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: kind
|
|
logicalType: string
|
|
required: false
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- purpose
|
|
- scope
|
|
- definition
|
|
- lead
|
|
- item
|
|
- provision
|
|
- delegation
|
|
- in_force
|
|
- transitional
|
|
- deleted
|
|
- name: status
|
|
logicalType: string
|
|
required: false
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- in_force
|
|
- deleted
|
|
- pending
|
|
- name: Text
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Note
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_unit
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_unit
|
|
- name: Point
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Point
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: n
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: kind
|
|
logicalType: string
|
|
required: false
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- purpose
|
|
- scope
|
|
- definition
|
|
- lead
|
|
- item
|
|
- provision
|
|
- delegation
|
|
- in_force
|
|
- transitional
|
|
- deleted
|
|
- name: status
|
|
logicalType: string
|
|
required: false
|
|
quality:
|
|
- type: library
|
|
rule: validValues
|
|
validValues:
|
|
- in_force
|
|
- deleted
|
|
- pending
|
|
- name: Text
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Note
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_unit
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_unit
|
|
- name: Item
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Item
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: celex
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Text
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_eu_ref
|
|
- property: lakehouseTable
|
|
value: cac_silver.law_eu_ref
|
|
- name: Annex
|
|
logicalType: object
|
|
physicalType: xml-element
|
|
physicalName: Annex
|
|
description: ''
|
|
properties:
|
|
- name: id
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: lv-lik-[0-9]{4}-[0-9]{2}-[0-9]{2}(-[2-9])?\.(s[A-Z]|c[0-9]+(\.[0-9]+)*|art[0-9]+(s[0-9]+)?[a-z]?(\.d[0-9]+(s[0-9]+)?)?(\.p[0-9]+(s[0-9]+)?)*|tp(\.p[0-9]+(s[0-9]+)?)*|eu(\.[0-9]+)?|ann[0-9]+(s[0-9]+)?)
|
|
primaryKey: true
|
|
unique: true
|
|
- name: n
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Heading
|
|
logicalType: string
|
|
required: true
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Title
|
|
logicalType: string
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
- name: Line
|
|
logicalType: array
|
|
required: false
|
|
logicalTypeOptions:
|
|
pattern: '[\s\S]*\S[\s\S]*'
|
|
items:
|
|
logicalType: string
|
|
customProperties:
|
|
- property: lakehouseTable
|
|
value: cac_bronze.lik_annex
|
|
quality:
|
|
- name: xsd_valid
|
|
type: custom
|
|
engine: xsd
|
|
implementation: schemas/likumi-0.1.xsd
|
|
description: Datne atbilst XSD shēmai; neatbilstoša datne tiek reģistrēta kā kļūda
|
|
dimension: conformity
|
|
- name: filename_is_id
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: Path(path).stem == root/@id
|
|
description: Datnes nosaukums = dokumenta identifikators
|
|
dimension: consistency
|
|
- name: verification_matches
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:verification_matches
|
|
description: Pārbaudes atskaite (verification/<id>.verify.json) ir par šo likumu, un vienību skaits tajā sakrīt ar datni
|
|
dimension: consistency
|
|
- name: text_complete
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:text_complete
|
|
description: Datnē ir vismaz 99 % no avota teksta zīmēm (bez atstarpēm)
|
|
dimension: completeness
|
|
- name: conversion_decisions
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:conversion_decisions
|
|
description: Vietas, kur konvertors pieņēma lēmumu — jāpārbauda cilvēkam
|
|
dimension: accuracy
|
|
- name: ids_in_law
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:ids_in_law
|
|
description: Nodaļu, vienību un ES atsauču identifikatori sākas ar likuma identifikatoru
|
|
dimension: conformity
|
|
- name: numbering_continuous
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:numbering_continuous
|
|
description: Pantu numerācija bez iztrūkumiem
|
|
dimension: completeness
|
|
- name: amendments_ordered
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:amendments_ordered
|
|
description: Grozījumi hronoloģiski, un konsolidētā redakcija nav vecāka par pēdējo grozījumu
|
|
dimension: consistency
|
|
- name: celex_format
|
|
type: custom
|
|
engine: cac-lakehouse
|
|
implementation: app.cac_processgit:celex_format
|
|
description: Katrai ES atsaucei ir CELEX numurs pareizā formā
|
|
dimension: conformity
|
|
slaProperties:
|
|
- property: frequency
|
|
value: 1
|
|
unit: d
|
|
element: pull ingest (cron 03:30 UTC)
|
|
- property: retention
|
|
value: visas versijas (git vēsture)
|
|
team:
|
|
- role: owner
|
|
name: Saeima (konsolidētā redakcija likumi.lv); datu kopu sagatavo PPPA
|
|
- role: data steward
|
|
name: PPP Asociācija (PPPA)
|
|
support:
|
|
- channel: issues
|
|
url: https://processgit.org/Valsts-Pirmkods/Likums-as-Code/issues
|
|
customProperties:
|
|
- property: sourceId
|
|
value: B20
|
|
- property: namespace
|
|
value: urn:pppa:vpk:likumi:0.1
|
|
- property: rootElement
|
|
value: Law
|
|
- property: identifiers
|
|
value: likums lv-lik-GGGG-MM-DD[-N] (pieņemšanas datums); nodaļa <id>.cN; pants <id>.artN (28¹ → art28s1); daļa <pants>.dN; punkts <…>.pN; pārejas
|
|
noteikumi <id>.tp.pN; ES atsauce <id>.eu.N; pielikums <id>.annN
|