La ricerca dei dati nel RNDT è possibile anche tramite API REST. Per interrogare il Catalogo, l’URL da utilizzare è il seguente:

https://geodati.gov.it/RNDT/rest/metadata/search? <parametro>&<parametro>&…

dove <parametro> è uno dei parametri REST disponibili. Di seguito sono elencati quelli principali.

 

Parametro Descrizione Valori accettati
q Testo. Stringa.  E' possibile comporre la stringa di ricerca utilizzando tutti gli elementi indicizzati (vedi dopo), wildchars e operatori booleani.
id Testo Identificativo del metadato
bbox Estensione indicata come due coppie di coordinate (ovest-sud e est-nord). Valori di latitudine e longitudine separati da virgole.
modified Date per identificare un intervallo temporale di modifica del record Inizio/fine entrambe date nel formato yyyy-mm-dd
sort Ordinamento risultati. Uno fra: apiso_Modified_dt (data di modifica del record), relevance (default), title. I campi apiso_Modified_dt e title devono essere seguiti dalla clausola :asc o :desc
start Numero del primo record da considerare. Intero. Se utilizzato insieme al parametro max, fornisce l'impaginazione dei risultati della ricerca.
num Numero massimo di risultati. Interno. Valore massimo: 5000, default: 10. Se utilizzato insieme al parametro start, fornisce l'impaginazione dei risultati della ricerca.
f Formato della risposta. Un valore fra: atom, json, csw, rss, csv, kml, eros, json-source. 

 

Per maggiori dettagli fare riferimento alla pagina REST API Syntax del sito di test del geoportal-server ed in particolare alla funzione di ricerca REST /rest/metadata/search

Il motore di ricerca è basato su Elastic Search, un potente motore di ricerca e analisi che a sua volta utilizza il motore Apache Lucene; per sfruttare al meglio la ricerca, può essere utile conoscere la sintassi delle query Apache Lucene per le ricerche di testo.

A parte i filtri espliciti nella sintassi, come ad.es. bbox, per la selezione è necessario utilizzare il tag q= seguito dalla stringa di filtro secondo la sintassi Apache Lucene. Gli elementi interrogabili da utilizzare nelle ricerche sono tutti quelli presenti nel formato JSON di un metadato; questo può essere visualizzato ad esempio dalla pagina dei risultati cliccando in basso per selezionare il formato JSON. I parametri includono i criteri di ricerca indicati nelle linee guida INSPIRE sui servizi di ricerca. Un altro modo per visualizzare esempi di uso è quello di utilizzare la Ricerca Dettagliata impostando i filtri di interesse, poi sulla pagina di Anteprima cliccare sul simbolo del link e copiare e incollare il testo in un browser. 

A titolo di esempio ecco alcuni dei parametri utilizzabili; questi parametri sono solo alcuni di quelli presenti nella visualizzazione di un metadato in formato JSON:

 

Tag JSON Significato Sempre presente
fileid Identificativo del file SI
title Titolo SI
description Descrizione (abstract) SI
keyword_s L'insieme di tutte le parole chiave SI
EnteResponsabile_s L'ente responsabile del dato SI
apiso_Modified_dt Data di modifica del metadato  
apiso_TopicCategory_s Categoria tematica ISO (topicCategory) SI
apiso_CreationDate_dt Data di creazione del dato NO
apiso_PublicationDate_dt Data di pubblicazione del dato NO
apiso_RevisionDate_dt Data di revisione del dato NO
INSPIRETheme_s Tema INSPIRE SI per dataset e serie
isOpenData Se non vuoto è un opendata SI per dati aperti
sys_xml_clob Tutto l'XML del metadato SI

 

Di seguito si riportano alcuni esempi di interrogazione.

ESEMPIO 1

Ricerca di tutti i dati che hanno come tema INSPIRE Idrografia (1=INSPIRETheme_s:Idrografia). INSPIRETheme_s è uno dei criteri di ricerca. La ricerca è limitata ai primi 300 record (start=1 e num=300) e i risultati visualizzati in formato json (f=json) con ordinamento basato sul titolo in modalità ascendente.

https://geodati.gov.it/RNDT/rest/metadata/search?q=INSPIRETheme_s:Idrografia&start=1&num=300&sort=title:asc&f=json

ESEMPIO 2

Ricerca di tutti i dati che contengono le parole "carta" e "geologica" nel titolo, con massimo 50 risultati (num=50) a cominciare dal 20° record (start=20) visualizzati in HTML (f=html) ordinati secondo la data di modifica in modo ascendente (sort=apiso_Modified_dt:asc).

Si possono avere più casi.

Se il testo viene inserito tra virgolette (q=title:"carta geologica"), la ricerca restituisce tutti i record che contengono esattamente il testo inserito (le due parole una dopo l'altra così come inserite).

https://geodati.gov.it/RNDT/rest/metadata/search?q=title:"carta geologica"&start=20&num=50&sort=apiso_Modified_dt:asc&f=html

Se le due parole sono inserite senza virgolette (q=title:carta geologica), la ricerca restituisce tutti i record che contengono "carta" nel titolo e "geologica" in qualsiasi campo, in quanto, quando non specificato, il criterio di default è text. Da notare le parentesi per evitare che "geologica" venga interpretato per un parametro.

https://geodati.gov.it/RNDT/rest/metadata/search?q=(title:carta geologica)&start=20&num=50&sort=title:asc&f=html

Se le due parole sono inserite con l'operatore AND (q=title:carta AND geologica), la ricerca restituisce tutti i record che contengono entrambe le parole (non necessariamente una dopo l'altra così come inserite).

https://geodati.gov.it/RNDT/rest/metadata/search?q=title:(carta AND geologica)&start=20&num=50&sort=title:asc&f=html

 

ESEMPIO 3

Esempio con l'utilizzo di operatori jolly e operatori di inclusione/esclusione. Ricerca dei primi 50 metadati (start=1 e num=50) che contengono la parola "suolo" e non contengono la parola "natura" (-natura). Risultati ordinati secondo il titolo in modalità discendente (sort=title:desc) e risposta in formato json (f=json).

https://geodati.gov.it/RNDT/rest/metadata/search?q=(suolo -natura)&start=1&num=50&sort=title:desc&f=json

Ricerca come sopra, ma con metadati contenenti la stringa "suo" (*suo*) e non contenenti parole che iniziano con la sillaba "na" seguita da due caratteri e che finiscono con la sillaba "ra" (na??ra)

https://geodati.gov.it/RNDT/rest/metadata/search?q=(*suo*%20-na??ra)&start=1&num=50&sort=title:desc&f=json

ESEMPIO 4

Ricerca di uno specifico record tramite l'ID del file di metadati (id) che ritorna l'XML del metadato.

https://geodati.gov.it/RNDT/rest/metadata/search?id=ispra_rm:0029CNATHB_DT