Dal 12 al 14 giugno 2023, l'OGC ha tenuto il suo Code Sprint 2023 sulle interfacce di suddivisione in tessere (Tiling Interfaces Code Sprint ) presso i Moonshot Labs di NGA, membro strategico dell'OGC, a St. Louis, Missouri. Il Code Sprint si è concentrato su una serie selezionata di API (Application Programming Interface), standard di database e di codifica relativi alle tessere di mappa. Un'API è un insieme standard di funzioni documentate che espongono le funzionalità supportate o i dati offerti da un'applicazione o un servizio ad altre applicazioni.
Gli sprint di codice OGC sono eventi collaborativi e inclusivi che supportano lo sviluppo e il perfezionamento di standard aperti, offrendo agli sviluppatori software il tempo e lo spazio per concentrarsi sui progetti che implementano gli standard.
Sperimentando idee emergenti nel contesto degli standard geospaziali, gli sprint di codice OGC contribuiscono a migliorare l'interoperabilità degli standard esistenti sperimentando nuove estensioni o profili e creando o migliorando prodotti software per implementare gli standard.
Inoltre, i flussi di tutoraggio degli sprint forniscono agli sviluppatori un aiuto per imparare a utilizzare gli standard e i progetti, in modo che possano acquisire una conoscenza pratica degli stessi che duri oltre la durata dello sprint.
Il flusso di tutoraggio al Tiling Interfaces Code Sprint includeva tre tutorial entry-level che utilizzavano casi d'uso pratici per introdurre i partecipanti agli standard. Un tutorial si concentrava su come servire tile vettoriali utilizzando OGC API – Tiles standard, mentre un altro si concentrava sui test di conformità e il terzo forniva una panoramica di un prodotto basato sul Web che implementa diversi standard OGC.
Lo sprint del codice OGC Tiling Interfaces del 2023 si è concentrato sui seguenti standard e specifiche:
- OGC API – Tiles: Standard approvato che specifica gli elementi costitutivi per la creazione di API Web che supportano il recupero di informazioni geospaziali come riquadri.
- OGC API – Maps: Standard candidato che specifica gli elementi costitutivi per la fornitura di mappe e carte elettroniche con riferimenti spaziali e rappresentate dinamicamente.
- API dei set di modifiche: Una specifica del prototipo basata sui risultati di Banco di prova OGC-15 che fornisce la base per una "estensione API delle tessere transazionali" per OGC API – Tiles.
- Estensione Vector Tiles a GeoPackage: Un prototipo di estensione del OGC GeoPackage Standard per supportare l'uso di tile vettoriali.
- Matrice di tile a larghezza variabile: Una griglia adatta all'intero globo che conserva i dati in un sistema di riferimento di coordinate geografiche.
- Web Map Tile Service (Serie WMT): Il popolare standard OGC che specifica un servizio Web in grado di servire tile di mappe di dati referenziati spazialmente utilizzando immagini tile con contenuto, estensione e risoluzione predefiniti. Lo standard OGC WMTS è lo standard di base per i profili WMTS di Sistema nazionale statunitense per GEOINT (NSG) e Gruppo di lavoro sulle informazioni geospaziali della difesa (DGIWG).
Risultati
Al suo apice, lo sprint di codice ha visto 50 utenti attivi contemporanei partecipare da remoto su più canali sulla piattaforma online dello sprint di codice. La partecipazione di persona ha visto una dozzina di partecipanti da NGA, OGC, US Army Geospatial Center, UK Defence Science & Technology Laboratory (Dstl), Universitat Autònoma de Barcelona (CREAF), Pixalytics Ltd., Compass, FlightSafety International e University of Maryland.
Di seguito sono riportati gli screenshot di una selezione di applicazioni distribuite per lo sprint di codice.
La Figura 1 è uno screenshot del browser MiraMon che accede a più servizi e API conformi a OGC distribuiti da CREAF e altri partecipanti.
La figura 2 è uno screenshot di TEAM Engine, il software open source utilizzato da OGC Validator, che presenta i risultati dei test per un'implementazione specifica di OGC API – Tiles.
La figura 3 è uno screenshot del GIS desktop QGIS open source con GDAL incorporato per consentire l'importazione e la visualizzazione di riquadri di mappe e riquadri vettoriali.
La Figura 4 è un visualizzatore di Map Tiles di Tech Maven Geospatial.
La figura 5 è uno screenshot dell'applicazione pygeoapi abilitata per supportare OGC API – Tiles.
Durante lo sprint del codice, il personale dell'US Army Geospatial Center (AGC) ha presentato il prodotto Releasable Basemap Tiles (RBT) che è stato in fase di sviluppo presso l'AGC (Figura 6). La presentazione ha consentito ai partecipanti di identificare un approccio su come QGIS e GDAL potrebbero supportare flussi di lavoro che comportano il download di tile vettoriali e tile di mappa da un'API OGC e l'archiviazione dei tile in un GeoPackage.
Contiene dati del sistema operativo © Crown copyright e diritti di database 2023.
La figura 7 mostra una mappa creata da KORTxyz dalla distribuzione delle tessere vettoriali del prodotto Zoomstack dell'Ordnance Survey e accessibile tramite un OGC API – Tiles interfaccia.
Che cosa abbiamo imparato?
Di seguito sono riportate alcune delle lezioni apprese durante lo sprint di codice e registrate dai partecipanti l'ultimo giorno dello sprint di codice.
Sono necessari ulteriori documenti di orientamento per gli sviluppatori per l'implementazione OGC API – Tiles, in particolare per quanto riguarda il posizionamento sulle risorse tileset. Tale guida dovrebbe includere chiarimenti sulla gestione dei tipi di relazione come 'conformance' che possono essere rappresentati come semplici stringhe letterali e anche come URL.
È necessario assicurarsi che esista un percorso utente ben documentato per le persone che desiderano utilizzare OGC API – Tiles tramite QGIS. Ad esempio, documentazione per accompagnare un principiante dalla sua prima riga di codice a uno stadio più avanzato.
Sebbene sia stato svolto del lavoro sui tile vettoriali all'interno di OGC, è necessario altro lavoro per far progredire la specifica verso uno standard OGC. Parte del lavoro che potrebbe essere svolto include, ad esempio, lo sviluppo di un documento di Best Practice. RBT potrebbe fornire una base per tale Best Practice.
Per i futuri code sprint, potrebbe essere necessario introdurre i partecipanti alle basi delle specifiche su cui si concentra il code sprint prima dell'evento. Inoltre, sarebbe utile per i partecipanti, come gli studenti, avere istruzioni specifiche per aiutare i partecipanti a prepararsi per il code sprint.
Conclusioni e Raccomandazioni
Il code sprint ha raggiunto tutti i suoi obiettivi e ha raggiunto il suo scopo di supportare l'implementazione di standard geospaziali aperti all'interno della comunità degli sviluppatori. Inoltre, il code sprint ha fornito un ambiente per lo sviluppo e il test di implementazioni prototipo di standard aperti e un punto di partenza per gli sviluppatori per apprendere informazioni sugli standard bozza e approvati, nonché sulle loro implementazioni.
Al termine dello sprint del codice, i partecipanti hanno identificato le seguenti raccomandazioni:
- Uno sprint di codice futuro che include il Norma OGC CDB dovrebbe esaminare come le tessere vettoriali potrebbero essere incorporate in un tale archivio dati.
- AGC è interessata a come il sistema di riferimento delle coordinate World Mercator (riferimento EPSG:3395) potrebbe supportare le tessere vettoriali in un GeoPackageLa domanda per la sperimentazione futura è se questo potrebbe essere specificato in modo che possa essere implementato da qualsiasi sviluppatore.
- L'applicazione di OGC API – Tiles nel partizionamento e nell'indicizzazione dei contenuti da un'implementazione del OGC SensorThings API Standard e API OGC – Standard candidato per sistemi connessi potrebbe essere esplorato in un futuro sprint di codice.
- Un'iniziativa per sviluppare contenuti per la risorsa di e-learning dell'OGC e Programma di conformità OGC potrebbe contribuire a migliorare l'interoperabilità tra le implementazioni degli standard OGC.
- Sebbene il OGC API – Tiles è uno standard approvato, c'è del lavoro da fare per affrontare i problemi di interoperabilità nelle diverse implementazioni (vedere ad esempio questo problema su OSGeo gdal GitHub.
Per saperne di più e partecipare ai futuri OGC Code Sprint, visita la pagina web dedicata agli OGC Code Sprint o iscriviti alla newsletter sugli eventi OGC.