Buon pomeriggio,
sui gruppi Telegram e FB di opendatasicilia si è parlato del tema in oggetto.
Il punto di partenza è questa notizia (e uno dei PDF a fondo pagina):
https://www.comune.palermo.it/palermo-informa-dettaglio.php?tp=4&id=41439
Creo questo post qui per farlo diventare un nodo centrale dove raccogliere idee, problemi, ecc..
Inizio con un contributo sui dati di base, perché leggo qui che scaricare ad esempio le particelle catastali può essere un problema.
La Regione Siciliana esponi i dati catastali qui:
https://map.sitr.regione.sicilia.it/gis/rest/services/catasto/cartografia_catastale/MapServer
Non è definito quando siano aggiornati, ma dovrebbero essere abbastanza aggiornati.
Sono esposti tramite ArcGIS Server REST API, e molti software GIS hanno l’accesso diretto.
Il problema è che sono layer grandi, e il server non è rapido e l’utilizzo visuale è lento.
In queste cose, la riga di comando o un linguaggio di scripting possono essere una soluzione.
Le particelle sono il layer con ID=4:
https://map.sitr.regione.sicilia.it/gis/rest/services/catasto/cartografia_catastale/MapServer/4
Ogni layer è interrogabile e c’è una GUI per testare delle query:
https://map.sitr.regione.sicilia.it/gis/rest/services/catasto/cartografia_catastale/MapServer/4/query
Una query base, per fare test, sempre valida, è quella in cui 1=1.
L’output HTML mostra i primi 1000 record ed è utile per vedere quali sono gli attributi.

C’è il campo PRO_COM_T che è tipicamente il codice ISTAT del Comune. Quello di Palermo è 082053.
Allora si può impostare una query in cui PRO_COM_T='082053'. È molto più lenta, ma restituisce un’anteprima HTML dei primi 1000 record per le particelle del Comune di Palermo.
La query, semplificando al minimo, ha questo URL (metto a capo per leggibilità):
https://map.sitr.regione.sicilia.it/gis/rest/services/catasto/cartografia_catastale/MapServer/4/
query?where=PRO_COM_T%3D%27082053%27&outFields=*&f=json
Con where si imposta la query per Comune, con outFields=* si chiedono in output tutti i campi, e con f=json si imposta il formato di output.
Per questi accessi e questi download, io consiglio e uso sempre GDAL, una libreria disponibile anche a riga di comando su tutti i sistemi operativi.
Il comando (qui sotto con la sintassi Linux) è
ogr2ogr -f GPKG output.gpkg \
"https://map.sitr.regione.sicilia.it/gis/rest/services/catasto/cartografia_catastale/MapServer/4/query?where=PRO_COM_T%3D%27082053%27&outFields=*&f=json&orderByFields=OBJECTID+ASC" ESRIJSON \
-oo FEATURE_SERVER_PAGING=YES \
--debug on \
-nln particelle \
-append
Note:
-f GPKG output.gpkg, si impostano formato e nome fileESRIJSON)-oo FEATURE_SERVER_PAGING=YES per paginare la richiesta di 1000 in 1000--debug on per avere a schermo riscontro di quello che avviene (vedi esempio sotto)-nln particelle per fissare il nome del layer di output-append per non andare in scrittura in “distruzione”, ma in append, ovvero a integrare.
Fatto partire il comando, potete scendere a comprare un gelato e mangiarvelo.
Al ritorno avrete le particelle catastali. Le allego in 082053.7z.
C’è da fare il JOIN con le tabelle del PDF (che allego). E prima bisogna estrarre le tabelle dal PDF (con tabula, excel pymupd e decine di altri modi). Allego il CSV delle tabelle estratte dal PDF.
Qualche nota:
not_found.csv allegato)_06082024055736.gpkg è file spaziale che deriva dal JOIN dei dati del PDF con i dati catastaliPer le query ho usato duckdb e l’estensione spaziale. Scrivo la query principale, ma non entro nei dettagli.
duckdb -c "COPY (SELECT ST_AsWKB(A.geom) geom,B.* FROM st_read('082053.gpkg',layer=particelle) A
JOIN read_csv('_06082024055736.csv') B
ON A.FOGLIO = B.n_foglio AND A.NUMERO = B.n_particella)
to '_06082024055736.gpkg'
WITH (FORMAT GDAL, DRIVER 'GPKG',SRS 'EPSG:25833')"
Qui sotto, in rosso, le particelle del catasto dei soprassuoli percorsi dal fuoco.
Non ho fatto molte verifiche, e ci potrebbe essere qualche bruttura.
Ma l’elemento chiave è il file con le particelle, scaricato dal SITR regionale.
Saluti



--
Sito: http://opendatasicilia.it
Facebook: https://www.facebook.com/groups/opendatasicilia/
twitter: http://twitter.com/opendatasicilia
Gruppo Telegram: https://t.me/opendatasicilia
---
Hai ricevuto questo messaggio perché sei iscritto al gruppo "opendatasicilia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a opendatasicil...@googlegroups.com.
Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/opendatasicilia/96439c66-2b39-4290-a9ef-468831db3ddan%40googlegroups.com.