QGIS è un software GIS (Geographic information system) che permette di immagazzinare informazioni geografiche sotto forma di layers (strati) sovrapponibili in base alle proprie esigenze.
I layer in QGIS che contengono dati spaziali e geografici posso essere fondamentalmente di due formati: Vettoriale o Raster.

In QGIS, i formati vettoriali più comuni includono:
Shapefile (.shp): Uno dei formati vettoriali più diffusi, utilizzato per memorizzare dati geospaziali di tipo vettoriale, come punti, linee e poligoni. Consiste in diversi file che rappresentano i diversi aspetti dei dati (ad esempio, geometria, attributi, indice spaziale).
Uno Shapefile è costituito da più file correlati e questi file devono essere presenti tutti nella stessa cartella e devono avere lo stesso nome (ad esempio, mio_shapefile.shp
, mio_shapefile.shx
, mio_shapefile.dbf
, mio_shapefile.prj
) affinché il formato possa essere correttamente interpretato da un software GIS.

- File
.shp
: Questo file contiene la geometria dei dati, che può essere costituita da punti, linee o poligoni. Le geometrie sono descritte da una serie di coordinate (ad esempio, coordinate X e Y per i punti, o una serie di coordinate che definiscono il percorso delle linee e dei confini dei poligoni). - File
.shx
: Questo è l’indice dello Shapefile. Contiene un elenco degli offset dei record nel file.shp
. Questo aiuta il software GIS a trovare rapidamente le geometrie durante la lettura del file. - File
.dbf
: Questo è il file dove è memorizzata la tabella attributi, che contiene i dati non spaziali associati alle geometrie dello Shapefile. Ogni record nel file.dbf
corrisponde a una singola geometria nello Shapefile e contiene attributi associati a quella geometria. Ad esempio, se lo Shapefile rappresenta i confini dei paesi, il file.dbf
potrebbe contenere informazioni come il nome del paese, la popolazione, l’area, ecc. - File
.prj
(opzionale): Questo è il file di definizione della proiezione. Contiene informazioni sulla proiezione e sul sistema di coordinate utilizzati per la rappresentazione dei dati nello Shapefile. Questo file è importante per garantire che le geometrie vengano visualizzate correttamente nello spazio geografico corretto.
Lo Shapefile è un formato molto versatile e viene utilizzato per una vasta gamma di applicazioni, dal mapping geografico di base alla gestione dei dati spaziali complessi in applicazioni GIS avanzate.
Uno dei limiti che incontriamo nell’utilizzo di uno Shapefile e dato dal formato .dbf il quale può contenere dati per un massimo di 2Gb, il nome dei campi della tabella attributi non può superare i 10 caratteri e non può contenere spazi o caratteri speciali.
GeoPackage (.gpkg) è n formato vettoriale basato su SQLite progettato per memorizzare dati geospaziali. È un formato open source e supporta la memorizzazione di più layer all’interno dello stesso file.

Possiamo intendere il GeoPackage come un pacchetto, una cartella al cui interno può contenere diversi tipi di dati vettoriali, come punti, linee e poligoni, insieme ai loro attributi associati, organizzati in layer distinti e separati per geometria. Il GeoPackage supporta anche la memorizzazione di layer di dati raster, come immagini satellitari o mappe digitali, insieme ai dati vettoriali. Con questo formato è stato risolto il problema dei limiti del nome dei campi della tabella attributi presente nello Shapefile ed è formato da un unico file (possiamo immaginare uno GeoPackage come un file zip che contiene tutti i layer sia raster sia vettoriali ma non solo (per esempio gli stili di un layer che abbiamo creato, oppure lo stesso file di progetto qgis) di una cartella di lavoro.
Una delle principali caratteristiche del GeoPackage è la sua interoperabilità. Essendo basato su SQLite e utilizzando standard aperti per la memorizzazione dei dati geospaziali, il GeoPackage può essere facilmente scambiato e utilizzato tra diversi software GIS (per esempio ArcGIS) e piattaforme senza problemi di compatibilità.
Altri formati di scambio di dati geospaziali utilizzati in QGIS sono:
- GeoJSON (.geojson): formato di scambio dati geospaziali basato su JSON (JavaScript Object Notation), utilizzato per lo scambio di dati geografici tra diversi sistemi GIS e applicazioni web.
- KML/KMZ: è un formato di file sviluppato da Google per la rappresentazione di dati geografici in Google Earth. KML (Keyhole Markup Language) è il formato XML utilizzato per descrivere i dati geospaziali, mentre KMZ è un archivio compresso di file KML.
- GML (Geography Markup Language): Un formato XML standardizzato per la rappresentazione e lo scambio di dati geografici. È supportato da molti software GIS, inclusi QGIS.
- Spatialite (.sqlite): Anche se principalmente utilizzato per dati geospaziali di tipo raster, SQLite con estensione SpatiaLite supporta anche dati vettoriali geospaziali. È un database SQL leggero con funzionalità spaziali.
Questi sono solo alcuni dei formati vettoriali più comuni supportati da QGIS. QGIS supporta molti altri formati vettoriali a seconda delle versioni specifiche del software e delle estensioni installate.