11-19, 16:05–16:10 (Pacific/Auckland), WG403
Explore how cql2-rs, a compact Rust library for working with OGC CQL2 expressions, powers validation, conversion, and evaluation across environments — from Rust to CLI, Python, and WebAssembly — and how writing small, reusable Rust utilities can extend impact across languages and platforms.
CQL2 is a powerful and flexible query language designed by the OGC to support advanced filtering and subsetting of geospatial data, particularly for features and records. It enables expression of complex spatial, temporal, and logical conditions in both text and JSON forms.
cql2-rs is a Rust library built to work with CQL2 expressions. It provides tools to validate expressions, convert between text and JSON formats, combine multiple expressions, simplify logical trees, and evaluate expressions against JSON input. It is intended as a lightweight and reusable core for working with CQL2 in any setting.
Because it’s written in Rust, cql2-rs can be exposed across many platforms and runtimes. Along with publishing a Rust crate for usage within the Rust ecosystem, we've published a Python module via PyO3, a command-line interface, and a browser-based playground using WebAssembly; all built from the same codebase.
This talk will highlight both the functionality of the library and the philosophy behind it: building small, focused Rust utilities that embrace composability and portability. Whether you're scripting, building APIs, or creating interactive tools, cql2-rs demonstrates how a single Rust core can power diverse workflows and tools.
A cloud engineer @ DevelopmentSeed; working out of Nelson, British Columbia, Canada.