# 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/.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 .cN; pants .artN (28¹ → art28s1); daļa .dN; punkts <…>.pN; pārejas noteikumi .tp.pN; ES atsauce .eu.N; pielikums .annN