{"id":7650,"date":"2023-06-23T09:08:23","date_gmt":"2023-06-23T13:08:23","guid":{"rendered":"https:\/\/www.ogc.org\/?p=7650"},"modified":"2023-06-23T09:08:23","modified_gmt":"2023-06-23T13:08:23","slug":"the-2023-ogc-tiling-interfaces-code-sprint-how-it-went","status":"publish","type":"post","link":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/blog-article\/the-2023-ogc-tiling-interfaces-code-sprint-how-it-went\/","title":{"rendered":"The 2023 OGC Tiling Interfaces Code Sprint &#8211; How it went!"},"content":{"rendered":"\n<p>On June 12-14, 2023, OGC held its <a href=\"https:\/\/developer.ogc.org\/sprints\/21\/\" rel=\"nofollow noopener\" target=\"_blank\">2023 Tiling Interfaces Code Sprint<\/a> at OGC Strategic Member NGA\u2019s Moonshot Labs in St. Louis, Missouri. The code sprint focused on a select set of Application Programming Interface (API), database, and encoding standards related to map tiles. An API is a standard set of documented functions that expose the capabilities supported or data offered by an application, or service to other applications.&nbsp;<\/p>\n\n\n\n<p>OGC code sprints are collaborative and inclusive events that support the development and refinement of open standards by providing software developers the time and space to focus on projects that implement the standards.&nbsp;<\/p>\n\n\n\n<p>By experimenting with emerging ideas in the context of geospatial standards, OGC code sprints help improve interoperability of existing standards by experimenting with new extensions or profiles, and building or enhancing software products to implement the standards.&nbsp;<\/p>\n\n\n\n<p>In addition, the sprints\u2019 mentor streams provide developers with a helping hand when learning how to use the standards and projects so that they can build a working understanding of them that will last beyond the duration of the sprint.<\/p>\n\n\n\n<p>The mentor stream at the Tiling Interfaces Code Sprint included three entry-level tutorials that used practical use-cases to introduce participants to the standards. One tutorial focused on how to serve vector tiles using the OGC API &#8211; Tiles standard, while another focused on compliance testing, and the third provided an overview of a web-based product that implements several OGC standards.<\/p>\n\n\n\n<p>The 2023 OGC Tiling Interfaces Code Sprint focused on the following Standards and specifications:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/ogcapi.ogc.org\/tiles\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC API \u2013 Tiles<\/a>: An approved Standard that specifies building blocks for creating Web APIs that support the retrieval of geospatial information as tiles.<\/li>\n\n\n\n<li><a href=\"https:\/\/ogcapi.ogc.org\/maps\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC API \u2013 Maps<\/a>: A candidate Standard that specifies building blocks for serving spatially referenced and dynamically rendered electronic maps and charts.<\/li>\n\n\n\n<li><a href=\"https:\/\/docs.ogc.org\/per\/19-070.html\" rel=\"nofollow noopener\" target=\"_blank\">Changesets API<\/a>: A prototype specification based on outcomes from <a href=\"https:\/\/www.ogc.org\/initiatives\/testbed-15\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC Testbed-15<\/a> that provides the foundation for a \u2018Transactional Tiles API Extension\u2019 for OGC API \u2013 Tiles.<\/li>\n\n\n\n<li><a href=\"https:\/\/docs.ogc.org\/per\/18-101.html#_geopackage_tiled_feature_data_extensions_informative\" rel=\"nofollow noopener\" target=\"_blank\">Vector Tiles Extension to GeoPackage<\/a>: A prototype extension of the <a href=\"https:\/\/www.geopackage.org\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC GeoPackage Standard<\/a> to support the use of vector tiles.<\/li>\n\n\n\n<li><a href=\"https:\/\/docs.ogc.org\/is\/17-083r4\/17-083r4.html#variable-matrixwidth-tile-matrix\" rel=\"nofollow noopener\" target=\"_blank\">Variable Width Tile Matrix<\/a>: A grid suited for the whole globe that keeps the data in a geographic Coordinate Reference System.<\/li>\n\n\n\n<li><a href=\"https:\/\/portal.ogc.org\/files\/?artifact_id=35326\" rel=\"nofollow noopener\" target=\"_blank\">Web Map Tile Service (WMTS)<\/a>: The popular OGC Standard that specifies a web service that can serve map tiles of spatially referenced data using tiled images with predefined content, extent, and resolution. The OGC WMTS Standard is the base standard for the WMTS profiles of the <a href=\"https:\/\/www.nga.mil\/news\/New_strategy_calls_on_Geospatial_Intelligence_Comm.html\" rel=\"nofollow noopener\" target=\"_blank\">US National System for GEOINT (NSG)<\/a> and the <a href=\"https:\/\/dgiwg.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Defense Geospatial Information Working Group (DGIWG)<\/a>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Results<\/h3>\n\n\n\n<p>At its peak, the code sprint had 50 concurrent active users participating remotely across multiple channels on the code sprint\u2019s online platform. In-person participation saw a dozen participants from NGA, OGC, US Army Geospatial Center, UK Defence Science &amp; Technology Laboratory (Dstl), Universitat Aut\u00f2noma de Barcelona (CREAF), Pixalytics Ltd., Compass, FlightSafety International, and University of Maryland.&nbsp;<\/p>\n\n\n\n<p>Screenshots of a selection of applications deployed for the code sprint are shown below.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78e83a3&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78e83a3\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"521\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-1024x521.png\" alt=\"\" class=\"wp-image-7652\" style=\"width:649px;height:330px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-1024x521.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-scaled-600x305.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-300x153.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-768x391.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-1536x781.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image1-2048x1042.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 1 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>Figure 1 is a screenshot of the MiraMon browser accessing multiple OGC-compliant services and APIs deployed by CREAF and other participants.&nbsp;<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78e897d&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78e897d\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"693\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-1024x693.png\" alt=\"\" class=\"wp-image-7653\" style=\"width:462px;height:313px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-1024x693.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-600x406.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-300x203.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-768x520.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-1536x1040.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image2-2048x1386.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 2 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>Figure 2 is a screenshot of TEAM Engine, the open source software used by the OGC Validator, presenting test results for a specific implementation of OGC API &#8211; Tiles.&nbsp;<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78e8e5e&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78e8e5e\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"624\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-1024x624.png\" alt=\"\" class=\"wp-image-7654\" style=\"width:545px;height:332px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-1024x624.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-600x366.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-300x183.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-768x468.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-1536x937.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image3-2048x1249.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 3 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>Figure 3 is a screenshot of the open source QGIS Desktop GIS with GDAL embedded to enable import and display of map tiles and vector tiles.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78e9347&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78e9347\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"551\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-1024x551.png\" alt=\"\" class=\"wp-image-7655\" style=\"width:571px;height:307px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-1024x551.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-scaled-600x323.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-300x161.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-768x413.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-1536x827.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image4-2048x1102.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 4 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>Figure 4 is a Map Tiles viewer by Tech Maven Geospatial.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78e97f2&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78e97f2\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"621\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-1024x621.png\" alt=\"\" class=\"wp-image-7656\" style=\"width:595px;height:361px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-1024x621.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-scaled-600x364.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-300x182.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-768x465.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-1536x931.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image5-2048x1241.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 5 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>Figure 5 is a screenshot of the pygeoapi application enabled to support OGC API &#8211; Tiles.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><a href=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6.png\" target=\"_blank\" rel=\"noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"526\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-1024x526.png\" alt=\"\" class=\"wp-image-7657\" style=\"width:544px;height:280px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-1024x526.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-scaled-600x308.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-300x154.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-768x394.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-1536x789.png 1536w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image6-2048x1052.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Figure 6 (click to enlarge)<\/figcaption><\/figure>\n\n\n\n<p>During the code sprint, personnel from the US Army Geospatial Center (AGC) presented the Releasable Basemap Tiles (RBT) product which has been in development at AGC (Figure 6). The presentation enabled participants to identify an approach for how QGIS and GDAL could support workflows that involve the downloading of vector tiles and map tiles from an OGC API and the storage of the tiles in a GeoPackage.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69febd78ea5ca&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69febd78ea5ca\" class=\"wp-block-image aligncenter size-large is-resized wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"511\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7-1024x511.png\" alt=\"\" class=\"wp-image-7658\" style=\"width:595px;height:297px\" srcset=\"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7-1024x511.png 1024w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7-600x299.png 600w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7-300x150.png 300w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7-768x383.png 768w, https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-content\/uploads\/2023\/06\/2023TilingSprint_Image7.png 1215w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Figure 7 (click to enlarge)<br>Contains OS data \u00a9 Crown copyright and database right 2023.<\/figcaption><\/figure>\n\n\n\n<p>Figure 7 shows a map created by KORTxyz from the vector tiles distribution of the Ordnance Survey Zoomstack product and accessed through an OGC API &#8211; Tiles interface. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What did we learn?<\/h3>\n\n\n\n<p>The following are some of the lessons learned during the code sprint, and recorded by participants on the final day of the code sprint.&nbsp;<\/p>\n\n\n\n<p>There is a need for further developer guidance documents for implementing OGC API &#8211; Tiles, particularly with regard to the placement on tileset resources. Such guidance should include clarification on the handling of relation types such as \u2018conformance\u2019 that can be represented as simple string literals and also as URLs.<\/p>\n\n\n\n<p>There is a need to make sure there exists a well-documented user journey for people that want to use OGC API &#8211; Tiles through QGIS. For example, documentation to take a beginner from their first line of code to a more advanced stage.<\/p>\n\n\n\n<p>Although some work has been done on vector tiles within OGC, more work is needed to advance the specification towards becoming an OGC Standard. Some of the work that could be carried out includes, for example, development of a Best Practice document. RBT could provide a foundation for such a Best Practice.<\/p>\n\n\n\n<p>For future code sprints, it may be necessary to introduce participants to the basics of the specifications that are in focus for the code sprint ahead of the event. Further, it would be helpful to participants such as students to have specific instructions to help participants prepare for the code sprint.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusions and Recommendations<\/h3>\n\n\n\n<p>The code sprint met all of its objectives and achieved its goal of supporting the implementation of open geospatial standards within the developer community. Furthermore, the code sprint provided an environment for development and testing of prototype implementations of open standards and a starting point for developers to learn about the draft and approved standards, as well as their implementations.<\/p>\n\n\n\n<p>The participants identified the following recommendations at the conclusion of the code sprint:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A future code sprint that includes the <a href=\"https:\/\/www.ogc.org\/standard\/cdb\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC CDB Standard<\/a> should examine how vector tiles could be embedded in such a data store.<\/li>\n\n\n\n<li>AGC is interested in how the World Mercator coordinate reference system (reference EPSG:3395) could support vector tiles in a GeoPackage. The question for future experimentation is whether this could be specified so that it can be implemented by any developer.<\/li>\n\n\n\n<li>The application of OGC API &#8211; Tiles in partitioning and indexing content from an implementation of the <a href=\"https:\/\/www.ogc.org\/standard\/sensorthings\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC SensorThings API standard<\/a> and the <a href=\"https:\/\/ogcapi.ogc.org\/connectedsystems\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC API &#8211; Connected Systems candidate standard<\/a> could be explored in a future code sprint.<\/li>\n\n\n\n<li>An initiative to develop content for the OGC e-learning resource and the <a href=\"https:\/\/www.ogc.org\/resources\/compliance\/\" rel=\"nofollow noopener\" target=\"_blank\">OGC Compliance Program<\/a> could help improve interoperability between implementations of OGC Standards.<\/li>\n\n\n\n<li>Although OGC API &#8211; Tiles is an approved standard, there is some work to do around addressing interoperability issues in the different implementations (see for instance <a href=\"https:\/\/github.com\/OSGeo\/gdal\/issues\/7970\" rel=\"nofollow noopener\" target=\"_blank\">this Issue on the OSGeo gdal GitHub<\/a>.<\/li>\n<\/ul>\n\n\n\n<p><em>To learn more about \u2013 and participate in \u2013 future OGC Code Sprints, visit the <\/em><a href=\"https:\/\/www.ogc.org\/initiatives\/ogcsprints\/\" rel=\"nofollow noopener\" target=\"_blank\"><em>OGC Code Sprints webpage<\/em><\/a><em> or sign up to the OGC Events Newsletter.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>On June 12-14, 2023, OGC held its 2023 Tiling Interfaces Code Sprint at OGC Strategic Member NGA\u2019s Moonshot Labs in St. Louis, Missouri. The code sprint focused on a select set of Application Programming Interface (API), database, and encoding standards related to map tiles.<\/p>\n","protected":false},"author":1,"featured_media":7651,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_eb_attr":"","footnotes":""},"categories":[190],"tags":[198,197,251,218,180,238,174,317,299,318],"class_list":["post-7650","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-article","tag-code-sprint","tag-event","tag-geopackage","tag-nga","tag-ogc-api-maps","tag-ogc-api-tiles","tag-ogc-apis","tag-vector-tiles","tag-wmts","tag-wmts-profiles"],"acf":[],"_links":{"self":[{"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/posts\/7650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/comments?post=7650"}],"version-history":[{"count":0,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/posts\/7650\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/media\/7651"}],"wp:attachment":[{"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/media?parent=7650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/categories?post=7650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fm-connect1.fortmindz.in\/wp-ogc\/wp-json\/wp\/v2\/tags?post=7650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}