Tom Kralidis
Tom Kralidis is with the Meteorological Service of Canada and a longtime contributor to FOSS4G and open standards. He is the creator of pygeoapi, pycsw, and numerous projects in the geospatial Python ecosystem. Tom is a lead architect of the WMO Information System (WIS2), and chairs the WMO Task Team on Open Source as well as the WMO Expert Team on Metadata Standards. He also chairs the OGC Pub/Sub Standards working group and co-chairs the OGC API - Records Standards Working Group.
Tom is passionate about location, open software, standards and data, and currently serves on the OSGeo Board of Directors.
Sessions
Keeping (OGC) Geospatial Web Services up-and-running is best accommodated by continuous monitoring: not only downtime needs to be guarded,
but also whether the services are functioning correctly and do not suffer from performance and/or other Quality of Service (QoS) issues.
GeoHealthCheck (GHC) is an Open Source Python application for monitoring uptime and availability of OGC Web Services.
In this talk we will explain GHC basics, how it works, how you can use and even extend GHC (plugins).
There is an abundance of standard (HTTP) monitoring tools that may guard for general status and uptime of web services.
But OGC web services often have their own error, "Exception", reporting not caught by generic HTTP uptime
checkers. For example, an OGC Web Mapping Service (WMS) may provide an Exception as a valid XML response or
in a error message written "in-image", or an error may render a blank image.
A generic uptime checker may assume the service is functioning as from those requests and an HTTP status "200" is returned.
Other OGC services may have specific QoS issues not directly obvious. A successful and valid "OWS GetCapabilities" response may not
guarantee that individual services are functioning correctly. For example an OGC Web Feature Service (WFS) based on a dynamic database may
return zero Features on a GetFeature response caused by issues in an underlying database. Even standard HTTP checkers supporting "keywords"
may not detect all failure cases. Many OGC services will have multiple "layers" or feature types,
how to check them all?
What is needed is a form of semantic checking and reporting specific to OGC services!
GeoHealthCheck (GHC) is an Open Source (MIT) web-based framework through which OGC-based web services can be monitored. GHC is written in
Python (with Flask) under the umbrella of the GeoPython GitHub Organization. It is currently an OSGeo Community Project.
GHC consists of a web-UI through which OGC service endpoint URLs and their checks can be managed,
and monitoring-results can be inspected, plus a monitoring engine that executes scheduled "health-checks" on OGC service endpoints.
A database stores results, allowing for various forms of reporting.
GHC is extensible: a plugin-system is available for "Probes" to support an expanding number of
cases for OGC specific requests and -checks. Work is in progress to provide a GHC API for various integrations.
Info, sources, demo: https://geohealthcheck.org
Open-source software has become increasingly crucial for the World Meteorological Organization (WMO) and its Members, particularly those in developing countries, Least Developed Countries (LDCs), and Small Island Developing States (SIDS). The potential of open source can enable climate action for adaptation, while also addressing the challenges and opportunities presented by the current landscape of open-source development within the WMO.
Open-source solutions also play a pivotal role as accelerators for the implementation of Early Warnings for All, a key UN initiative in which WMO is playing a critical role, aimed at protecting every person on Earth with life-saving early warning systems by 2027. By providing accessible, customizable, and cost-effective tools, open-source software enables WMO Members to rapidly deploy and adapt early warning systems to their specific needs and contexts. This approach is particularly crucial for developing countries, LDCs and SIDS, where resource constraints often hinder the implementation of proprietary solutions.
Moreover, open-source initiatives serve as powerful catalysts in supporting WMO Members' efforts towards digital transformation. As National Meteorological and Hydrological Services (NMHSs) worldwide strive to modernize their operations and services, open-source tools offer a flexible and scalable foundation for innovation. They enable Members to leverage cutting-edge technologies, collaborate on development, and share best practices, thus accelerating their digital transformation journeys while optimizing resource utilization.
For many years, WMO has been actively involved in developing and supporting open-source software as a low-barrier, low-cost solution for its Members. These efforts, combined with comprehensive training and mentoring activities, have been met with enthusiasm and success.
This presentation will provide an overview of Open Source at WMO, its significant use, current status and future plans for increased development and use of Open Source software to help lower the implementation barrier to data exchange of weather/climate/water/environmental data.
Join us as we explore how WMO is transforming global weather, water, and climate data sharing, and discover how this initiative, along with FOSS4G tools, is fostering collaboration, innovation, and societal benefits on a global scale, with a particular focus on supporting Climate Action and Early Warning for All.
pygeometa provides a lightweight and Pythonic approach for users to easily create geospatial metadata in standards-based formats using simple configuration files (affectionately called metadata control files [MCF]). Leveraging the simple but powerful YAML format, pygeometa can generate metadata in numerous standards. Users can also create their own custom metadata formats which can be plugged into pygeometa for custom metadata format output.
For developers, pygeometa provides a Pythonic API that allows developers to tightly couple metadata generation within their systems and integrate nicely into metadata production pipelines.
The project supports various metadata formats out of the box including ISO 19115, the WMO Core Metadata Profile, and the WIGOS Metadata Standard.
pygeometa has minimal dependencies (install is less than 50 kB), and provides a flexible extension mechanism leveraging the Jinja2 templating system.
This presentation will provide an update on recent enhancements, use in high profile projects as well as future plans and roadmap.
Open Software and Open Standards are complementary pieces of the geospatial ecosystem. In January 2022, OSGeo and OGC signed a new and updated version of the Memorandum of Understanding (MoU) that aims to maximize the achievement of the mission and goals of both organizations. Execution of joint Code Sprints, identifying free and open source technologies that could be used as Reference Implementations for OGC Standards and validating OGC compliance tests are examples of activities that can take place within the scope of the agreement.
In the first year after the agreement was signed, we established the basilar stones for the OSGeo membership within OGC and promoted the related activities within OSGeo. Now we start to see an increasing interest from both sides and some outcomes which are important to highlight.
This presentation will provide an overview of all activities accomplished under the MoU over the last year, as well as discuss future plans. For those who have been distracted, it will reiterate the benefits of the agreement, which allows OSGeo charter members to represent the priorities of OSGeo in the development of OGC Standards and supporting documents and services.
MoU: https://www.osgeo.org/wp-content/uploads/MOU_OGC_OSGeo_2022_signed.pdf
Joint Code Sprint 2024: https://developer.ogc.org/sprints/23/
TeamEngine: https://www.osgeo.org/projects/teamengine/
pygeoapi is an OGC API Reference Implementation. Implemented in Python, pygeoapi supports numerous OGC APIs via a core agnostic API, different web frameworks (Flask, Starlette, Django) and a fully integrated OpenAPI capability. Lightweight, easy to deploy and cloud-ready, pygeoapi's architecture facilitates publishing datasets and processes from multiple sources. The project also provides an extensible plugin framework, enabling developers to implement custom data adapters, filters and processes to meet their specific requirements and workflows. pygeoapi also supports the STAC specification in support of static data publishing.
pygeoapi has a significant install base around the world, with numerous projects in academia, government and industry deployments. The project is also an OGC API Reference Implementation, lowering the barrier to publishing geospatial data for all users.
This presentation will provide an update on the current status, latest developments in the project, including new core features and plugins. In addition, the presentation will highlight key projects using pygeoapi for geospatial data discovery, access and visualization.