Cartografia catastale in QGIS e ArcGIS: workflow tecnico 2025

Procedura 2025 per convertire i GML catastali nazionali in GeoPackage e integrarli in QGIS e ArcGIS con strumenti open source.

· Aggiornato il
Team Zornade
10 min di lettura
Immagine di copertina per: Cartografia catastale in QGIS e ArcGIS: workflow tecnico 2025

Cartografia catastale in QGIS e ArcGIS

Questa guida riassume un workflow ripetibile e riproducibile per convertire i dataset catastali italiani in formato GML e importarli correttamente in QGIS e ArcGIS. Il focus è garantire coerenza metrica, tracciabilità operativa e rispetto delle condizioni d'uso fissate dall'Agenzia delle Entrate.

Il dato di partenza copre l'intero territorio nazionale: l'Agenzia delle Entrate espone via WFS INSPIRE circa 85 milioni di particelle catastali (terreni e fabbricati). È una scala che rende impraticabile scaricare ed elaborare tutto localmente in un pomeriggio: questa guida è pensata per chi ha bisogno di un sottoinsieme specifico (una provincia, una regione, un set di comuni) e vuole un workflow riproducibile, non per chi cerca la scorciatoia più rapida - per quella, vedi la sezione dedicata più sotto.

Contesto e licenza

  • Fonte principale: servizio WFS INSPIRE dell'Agenzia delle Entrate (pacchetto nazionale ITALIA.zip o archivi provinciali).
  • Formato sorgente: GML INSPIRE con struttura per foglio catastale e codici amministrativi.
  • CRS più frequenti: Gauss-Boaga Ovest/Est (EPSG:3003/3004) e, in subset limitati, WGS84/UTM (EPSG:32632/32633).
  • Riuso: verificare licenze e limitazioni dell'Agenzia delle Entrate prima di impieghi commerciali o diffusione di derivati. Il WFS è pubblico e liberamente consultabile; alcuni endpoint più avanzati richiedono autenticazione SPID o CIE. Le condizioni di riuso non equivalgono automaticamente a una licenza open data generica: prima di ridistribuire un derivato pubblicamente, controllare sempre i termini pubblicati sul portale dell'Agenzia.

Requisiti tecnici

Voce Valore indicativo Note
Spazio su disco >= 50 GB Include archivio compresso, estrazione e output
RAM >= 16 GB 32 GB consigliati per processing nazionale
Sistema operativo Windows 10+, macOS 13+, Ubuntu 22.04+ Compatibile con GDAL >= 3.6
Toolchain Python 3.10+, GDAL/OGR, GeoPandas 0.14+ Installazione consigliata via conda

I 50 GB indicati non sono un numero arbitrario: derivano dalla somma di archivio compresso originale, file GML estratti (che occupano diverse volte lo spazio del corrispondente zip, essendo XML non compresso) e output GeoPackage/report intermedi. Su un subset provinciale i requisiti scendono proporzionalmente: una singola provincia richiede tipicamente qualche GB, non decine.

Preparazione ambiente

  1. Creare un ambiente dedicato.

     conda create -n catasto-gis python=3.10
     conda activate catasto-gis
    
  2. Installare le dipendenze principali.

     conda install -c conda-forge geopandas gdal fiona click psutil
    
  3. Verificare la configurazione di base.

     python -c "import geopandas, fiona, osgeo; print('ambiente ok')"
    

Un ambiente dedicato (conda o venv) non è un dettaglio opzionale: GDAL ha spesso conflitti di versione con altre librerie geospaziali già installate nel sistema operativo, e un ambiente isolato evita che un aggiornamento futuro rompa silenziosamente l'intera pipeline di conversione.

Pipeline di conversione

  1. Scaricare l'archivio ITALIA.zip o i pacchetti provinciali e annotare la data di pubblicazione.

  2. Ispezionare l'archivio con zipinfo per identificare i file con suffisso _map.gml prima dell'estrazione completa.

  3. Estrarre i GML in una directory temporanea preservando la gerarchia originale.

  4. Utilizzare uno script Python basato su GDAL/GeoPandas per:

    • caricare i layer GML,
    • normalizzare il sistema di riferimento con to_crs,
    • aggiungere attributi di provenienza (comune, foglio, timestamp di download),
    • esportare un GeoPackage consolidato o per macro-area.
  5. Monitorare RAM, spazio libero e log durante l'esecuzione.

     python processa_mappe_catastali.py ITALIA.zip catasto_italia_2025q3.gpkg --verbose
    
  6. Validare l'output con ogrinfo, calcolare hash SHA-256 e archiviare un report di controllo.

Un dettaglio spesso sottovalutato al punto 2: ispezionare l'archivio PRIMA di estrarlo tutto per intero fa risparmiare tempo reale, non solo teorico. Gli archivi provinciali contengono spesso file accessori (metadati XML, indici, anteprime) che non servono alla conversione: estrarre selettivamente solo i _map.gml riduce sensibilmente lo spazio temporaneo occupato, soprattutto su archivi da diversi GB.

I limiti di questa guida

Vale la pena essere onesti su cosa questo workflow NON risolve:

  • Non gestisce automaticamente le variazioni catastali nel tempo: se un foglio viene aggiornato tra un download e il successivo, la pipeline sovrascrive senza segnalare la differenza. Serve un controllo manuale a campione (punto 6 sopra) per accorgersene.
  • Non normalizza automaticamente gli errori di encoding: come descritto sopra, alcuni GML più vecchi usano ISO-8859-1. La pipeline base non rileva questo automaticamente: va aggiunto un controllo esplicito se si lavora su archivi storici.
  • Non è pensata per aggiornamenti incrementali: ogni esecuzione riparte dai GML completi. Per un workflow di produzione con aggiornamenti frequenti e continui, servirebbe una logica di diff che questa guida non copre.
  • Le stime di tempo/spazio sono indicative, non garantite: dipendono da hardware, dimensione del subset e versione di GDAL installata: i numeri di questa guida sono un punto di partenza, non un impegno preciso.

Integrazione in QGIS

  1. Aprire Layer > Aggiungi layer > Layer vettoriale e selezionare il GeoPackage generato.
  2. Costruire indici spaziali e di attributo dal pannello Gestione dati per ridurre i tempi di query.
  3. Impostare simbologie tematiche (categoria, foglio) e salvare stili QML condivisibili.
  4. Abilitare percorsi relativi nel progetto QGIS per facilitare la distribuzione su storage di rete.

Integrazione in ArcGIS Pro

  1. Dal Catalog utilizzare Add Data > Data e caricare il GeoPackage consolidato.
  2. Controllare il CRS; riproiettare in ETRF2000 / UTM32N quando servono misure metriche uniformi.
  3. Applicare Feature Class To Geodatabase per importare il dataset in un file geodatabase e definire domini o regole topologiche.
  4. Documentare metadati nel pannello Item Description (data di download, trasformazioni GDAL, hash file).

La scelta tra lavorare direttamente sul GeoPackage o importare in un file geodatabase Esri dipende dal caso d'uso: il GeoPackage resta più portabile (nessun vendor lock-in, apribile da QGIS/ArcGIS/altri strumenti), mentre il geodatabase offre funzionalità native ArcGIS più avanzate (domini, subtype, regole topologiche complesse) quando servono per un progetto di lunga durata interamente nell'ecosistema Esri.

Risoluzione delle criticità

  • Spazio temporaneo insufficiente: impostare TMPDIR su un volume secondario o utilizzare parametri CLI che indirizzano i file intermedi.
  • GML non leggibili: eseguire ogrinfo -so file.gml layer; se l'errore persiste, ripetere il download.
  • CRS non coerenti: normalizzare con gdalwarp (raster) o GeoDataFrame.to_crs() (vettoriale) e annotare ogni trasformazione.
  • Performance lente in QGIS: creare layer semplificati con gdal_simplify o applicare filtri di scala.

Errori comuni da evitare

  • Assumere che "Monte Mario" equivalga a un singolo EPSG universale: il sistema Gauss-Boaga storico si articola in più zone (Ovest EPSG:3003, Est EPSG:3004) e confonderle produce uno shift sistematico di centinaia di metri, non un errore evidente da individuare a colpo d'occhio.
  • Ignorare l'encoding dei GML più vecchi: alcuni archivi provinciali usano ancora ISO-8859-1 invece di UTF-8 per i campi testuali (toponimi, denominazioni catastali): senza una conversione esplicita, caratteri accentati nei nomi dei comuni risultano corrotti.
  • Processare l'intero ITALIA.zip quando serve solo una provincia: scaricare e processare l'archivio nazionale per un'analisi locale spreca ore di elaborazione ed è la causa più comune di esaurimento spazio disco a metà pipeline.
  • Non versionare la data di download: i GML dell'Agenzia delle Entrate cambiano nel tempo (nuovi frazionamenti, variazioni catastali); senza un timestamp nel nome del file o nei metadati, un'analisi diventa impossibile da riprodurre esattamente mesi dopo.
  • Confondere il numero di foglio catastale con un identificativo univoco nazionale: i numeri di foglio si ripetono tra comuni diversi. L'identificativo univoco richiede sempre la combinazione comune + foglio + particella (+ subalterno per le unità immobiliari), mai il solo numero di foglio isolato.

Alternative pronte all'uso: quando evitare la pipeline manuale

Questo workflow ha senso quando serve controllo granulare su ogni fase (trasformazioni di sistema di riferimento specifiche, integrazione in una pipeline GIS aziendale già esistente, esigenze di audit trail dettagliato). Se invece l'obiettivo è più semplice - avere dati catastali puliti e pronti senza gestire l'intera pipeline GDAL/GML - esistono alternative più rapide:

La differenza pratica: questa guida costruisce la pipeline da zero (giorni di lavoro la prima volta, ore per ogni aggiornamento successivo); le alternative sopra restituiscono dati già pronti in minuti, al costo di un controllo più limitato sulle trasformazioni intermedie.

Aggiornamenti e controllo qualità

  • Verificare trimestralmente nuove release del servizio WFS e aggiornare la nomenclatura (es. catasto_italia_2025q3.gpkg).
  • Archiviare log di esecuzione, parametri CLI e hash dei file assieme al dataset prodotto.
  • Eseguire controlli a campione su geometrie e attributi confrontando con i GML originali o estratti ufficiali.

Riferimenti

  • Agenzia delle Entrate, servizio INSPIRE cartografia catastale.
  • Linee guida INSPIRE per il tema Cadastral Parcels.
  • Manuale GDAL/OGR sulla conversione GML > GeoPackage.
  • Documentazione QGIS 3.34 su GeoPackage e indici.
  • ArcGIS Pro, guida al supporto del formato GeoPackage.

Domande frequenti

Serve un abbonamento o un pagamento per scaricare i GML catastali?

No, il servizio WFS INSPIRE dell'Agenzia delle Entrate è pubblico e gratuito. Alcuni endpoint più avanzati (dati collegati a visure nominative) richiedono invece autenticazione SPID o CIE.

Qual è la differenza tra Gauss-Boaga e WGS84/UTM per i dati catastali?

Gauss-Boaga (EPSG:3003 Ovest, EPSG:3004 Est) è il sistema storico su cui è stata storicamente prodotta la cartografia catastale italiana. WGS84/UTM (EPSG:32632/32633) è più comune per l'interoperabilità con altri dataset internazionali. La scelta dipende dall'uso finale: per sovrapposizioni con dati globali (OpenStreetMap, satellite) conviene WGS84/UTM; per coerenza con la cartografia catastale storica, Gauss-Boaga.

Perché convertire in GeoPackage invece di lavorare direttamente sui GML?

Il GeoPackage consolida più layer in un unico file SQLite, supporta indici spaziali nativi (query molto più rapide) e non ha i limiti di lunghezza dei nomi di campo che affliggono lo Shapefile. I GML nativi sono più lenti da interrogare ripetutamente in QGIS/ArcGIS.

Quanto tempo richiede processare l'intero territorio nazionale?

Dipende da hardware e dimensione del subset. Per l'intero pacchetto ITALIA.zip (decine di GB, milioni di particelle), servono più ore anche con hardware dedicato (32GB RAM consigliati). Per una singola provincia il tempo scende a minuti/decine di minuti.

Posso ridistribuire pubblicamente un GeoPackage derivato dai GML catastali?

Dipende dalle condizioni di riuso pubblicate dall'Agenzia delle Entrate, che vanno verificate caso per caso prima della ridistribuzione: il servizio WFS pubblico non equivale automaticamente a una licenza open data generica applicabile a qualunque derivato.

Conviene costruire questa pipeline da zero per un progetto una tantum?

Per un'analisi singola o non ricorrente, spesso no: le alternative pronte all'uso (API, plugin QGIS, dataset già puliti) richiedono minuti invece di giorni. Questa pipeline ha senso quando serve controllo granulare ripetuto nel tempo, o integrazione in un workflow GIS aziendale esistente.

GDAL 3.6 è una versione obbligatoria o solo consigliata?

È la versione minima consigliata per garantire supporto stabile ai driver GML/GeoPackage usati in questa guida. Versioni precedenti possono funzionare ma con comportamenti meno prevedibili su alcuni edge case di conversione CRS.

Il numero di foglio catastale identifica univocamente una particella in tutta Italia?

No. Il numero di foglio si ripete tra comuni diversi: l'identificativo univoco richiede sempre la combinazione comune + foglio + particella (più il subalterno per le singole unità immobiliari all'interno di un fabbricato).

Hai bisogno di integrare dati catastali nei tuoi sistemi?

Abbiamo già realizzato piattaforme PropTech, integrazioni Sister e dashboard territoriali per aziende immobiliari e PA. Possiamo fare lo stesso per te.

Richiedi un preventivo gratuito