bitbeet.dev
← volver a proyectos
// 04 · govtech

PNR Art. 8 Generator

Generador de entregables oficiales MITECO para el Art. 8 del Reglamento UE 2024/1991.


STACK
Python 3.12 · PySide6 (Qt 6) · PyInstaller · rasterio · GDAL · GeoPackage · COG · ISO 19115 · ReportLab · openpyxl
STATUS
live

El Reglamento UE 2024/1991 de Restauración de la Naturaleza obliga a cada municipio español cualificado a entregar el paquete del Artículo 8 a MITECO antes de mayo de 2026. El formato es estricto: Excels concretos, capas GeoPackage con esquema exacto, GeoTIFFs Cloud-Optimized, metadatos ISO 19115, memoria PDF firmada y un ZIP por debajo de 20 MB. 1.342 municipios lo necesitan. Este proyecto industrializa todo el flujo.

El pipeline

PNR Art. 8 generator pipeline: Copernicus rasters and LAU geometry feed a seven-step Python pipeline driven by a Qt wizard or CLI, producing the MITECO-ready deliverable // INPUTS (OFFICIAL SOURCES) Copernicus HRL rasters CLC+ Backbone 2023 DEGURBA · LAU 2024 shapefile Municipal INE + measures // PIPELINE · 7 STEPS 01 · load catalogue 02 · compute EVU / CAU 03 · map measures → categories 04 · build Excel Formato Uniforme 05 · write GeoPackage layers 06 · COG rasters + ISO 19115 07 · assemble ZIP ≤ 20 MB deterministic · byte-identical output zonal-stats via rasterio + GDAL // DRIVER Qt 6 Wizard PySide6 · .exe CLI pnr-art8 build // MITECO DELIVERABLE Excel · Formato Uniforme v20260317 GeoPackage · ZEU · MED · FDC Rásters COG · EVU · CAU ISO 19115 metadata XML Memoria técnica PDF ZIP ≤ 20 MB → bzn-pnr@miteco.es // SCOPE EU Reg. 2024/1991 Art. 8 · 1,342 Spanish municipalities DEGURBA 1-2 · deadline 2026-05-15
official sources · 7-step Python pipeline · Qt or CLI driver · MITECO-shaped deliverable

Siete pasos numerados, todos deterministas. Los mismos ficheros de entrada y el mismo INE siempre producen un ZIP byte-idéntico — crítico para auditoría.

  1. Catálogo de entrada — lee rásters HRL de Copernicus, CLC+ Backbone, shapefile DEGURBA, geometría LAU 2024 y el límite del municipio según el INE.
  2. Cálculo EVU / CAU — calcula ratios de cobertura de Área de Ecosistema Urbano y Área de Dosel Arbóreo mediante zonal statistics sobre los rásters.
  3. Catálogo de medidas — carga el inventario municipal de medidas de restauración y las mapea a categorías ZEU/MED/FDC.
  4. Libro Excel — genera el libro Formato Uniforme v20260317 de MITECO con las cifras calculadas y el catálogo de medidas.
  5. GeoPackage — escribe ZEU (Zonas Ecosistema Urbano), MED (Medidas), FDC (Fichas De Compromiso) como capas separadas con esquema de atributos exacto.
  6. Rásters COG + metadatos — exporta EVU y CAU como GeoTIFFs Cloud-Optimized + XML de metadatos ISO 19115. Construye la memoria PDF a partir de plantillas LaTeX/ReportLab.
  7. Empaquetado — ensambla el ZIP respetando el límite de 20 MB (fallback de compresión con pérdida si se excede).

Dos front-ends, un paquete

El trabajo pesado vive en pnr_art8/. Todo es reutilizable tanto desde una app de escritorio basada en QWizard como desde la CLI.

# Consulta rápida de municipio
pnr-art8 info --ine 38023

# Build completo (CLI)
pnr-art8 build --ine 38023 --year 2024 \
  --evu ./evu.tif --cau ./cau.tif \
  --medidas ./medidas.gpkg

# O usar la GUI
pnr-art8-gui

La GUI Qt 6 es un wizard guiado: elige el INE desde un catálogo buscable, auto-sugiere fuentes de rásters del Copernicus DiscoMap (88 productos indexados), corre el pipeline con barra de progreso y escribe el ZIP en outputs/<INE>/<year>/.

Empaquetado

Como el público son funcionarios municipales, no desarrolladores Python, la app se distribuye como un único .exe para Windows con PyInstaller. Todo el stack GDAL/rasterio más los recursos de Qt van dentro del mismo ejecutable. La instalación es copy-paste.

Referencia

Primera ejecución real: Ayuntamiento de San Cristóbal de La Laguna (ES38023). Output reproducido 1:1 contra la v01 hecha a mano (EVU 40,71 %, CAU 0,46 %, 304 medidas, ZIP de 1,05 MB). Paradigma de pasar la auditoría por construcción.

Licencia: EUPL-1.2. Canal oficial de entrega: bzn-pnr@miteco.es. Plazo: 15 de mayo de 2026.


1.342
municipios españoles
7
pasos del pipeline
< 20MB
límite ZIP final