Catalog Service for the Web
# Catalog Service for the Web

Il Catalog Service for the Web (CSW) è uno standard dell'OGC che definisce un'interfaccia per servizi di ricerca, di navigazione, e di interrogazione di metadati su dati, servizi, a altre risorse potenziali. Si riferisce alla pubblicazione Internet-based di informazioni su applicazioni spaziali, di geo-servizi e di dati spaziali (metadati) in un'infrastruttura di dati territoriali.

Il servizio include solo i metadati, cioè l'informazione puramente descrittiva dei dati, non i dati stessi. I metadati vengono gestiti secondo le norme ISO 19115 (per applicazioni spaziali e dati geo-spaziali) e ISO 19119 (per geo-servizi).

Il CSW ha acquisito particolare importanza dalla direttiva comunitaria INSPIRE.

## Operazioni

Il CSW definisce tre classi di operazioni che un client può effettuare su cataloghi dati via Web:

### Service operations

Operazioni per interrogare un servizio per determinare le operazioni implementate dal servizio stesso:

* GetCapabilites - permette di recuperare informazioni che descrivono l'istanza del servizio di catalogo

### Discovery operations

Operazioni per determinare il modello delle informazioni del catalogo ed effettuare delle query sui record del catalogo:

* DescribeRecord - permette di recuperare uno o più elementi del modello dei metadati (i tipi) supportati dal catalogo
* GetDomain - restituisce informazioni sui valori ammissibili di una o più proprietà di un metadato
* GetRecords - permette di effettuare una query (con filtri o espressioni CQL) per ottenere i metadati, con vari livelli di dettaglio (brief, summary e full)
* GetRecordById - permette di ottenere i record del catalogo utilizzando i loro identificatori [UUID - Universally Unique Identifier], ottenuti per esempio dalla operazione GetRecords

### Management operations

Operazioni per creare o modificare i record nel catalogo:

* Transaction - definisce una interfaccia per creare (insert), modificare (update) e cancellare (delete) i record del catalogo
* Harvest - permette di definire un insieme di dati che devono essere inseriti o modificati nel catalogo; un job sul catalogo si occuperà in seguito di processare la richiesta e aggiornare il catalogo
