This course develops DataTiles from first principles and ends with a reproducible mixed raster/vector publication. It treats DataTiles as a scientific data model rather than merely a file-manipulation library. Every lesson contains theory, a hands-on laboratory, observable checks, and questions for critical reflection.
| Lesson | Theory | Practical result |
|---|---|---|
| 1. From maps to data tiles | MBTiles, tiling, data versus portrayal, compatibility projection | Create and inspect a numeric DataTiles container |
| 2. Multidimensional coordinate algebra | Typed axes, point/interval coordinates, canonical identity, slicing | Store and retrieve multiple time/variable slices |
| 3. Raster matrices and vector features | Coverage and feature models, content profiles, encoding semantics | Build one container containing DNT1 and tiled GeoJSON |
| 4. Querying and deriving live products | Exact selection, sampling, interpolation boundaries, OGC API patterns | Serve and query point, profile, surface, contour, and content resources |
| 5. FAIR and reproducible publication | Identity, provenance, CRS, licences, reproducibility versus replicability | Validate and prepare a citable research artifact |
| 6. Conventions and source utilities | CF semantic identity, NetCDF/GRIB crosswalks, source provenance, declared resampling | Import local or URL-identified scientific grids into semantic DNT1 DataTiles |
| 7. FAIR evidence, provenance, and licensing | FAIR gates, W3C PROV, SPDX rights, DataCite 4.7, publication evidence | Prepare a defensible scholarly release |
| 8. Cryptographic integrity and signed releases | canonical logical manifests, Ed25519 signatures, trust, detached envelopes, release verification | Sign and verify a final scholarly DataTiles release |
| 9. Commercial distribution and DRM | ODRL policy, encrypted .dtpkg, recipient licences, key management |
Distribute lawful proprietary DataTiles products |
| 10. DataTiles Store PWA | Flask, SQLAlchemy, PWA, metadata indexing, RBAC, catalog search, interactive exploration | Publish an authenticated institutional DataTiles catalog |
The course assumes basic Python, command-line, SQL, and geospatial concepts. From the repository root:
python -m venv .venv
. .venv/bin/activate
python -m pip install -e '.[demo,test]'
datatiles --helpWindows PowerShell users activate with .venv\Scripts\Activate.ps1. Commands use POSIX shell syntax; the Python operations are platform-independent.
The reusable laboratory dataset is built without network access:
python docs/tutorial/examples/build_tutorial.py build tutorial.datatiles
python docs/tutorial/examples/build_tutorial.py verify tutorial.datatilesThe builder is part of the tested repository. It creates two DNT1 matrices and one tiled GeoJSON feature collection at the same spatial address but under different multidimensional coordinates. Its identifiers and landing-page URL are illustrative; Lesson 5 explains what a real publication must replace.
A learner completing the course should be able to explain why the tiles view is necessary but insufficient, derive a canonical coordinate-set key, distinguish a numeric raster matrix from a portrayal, justify a vector content profile, query exact coordinates without silently interpolating, interpret the FAIR report conservatively, and reproduce the tutorial artifact from source, and explain how NetCDF/CF and GRIB2 source metadata map into the DataTiles semantic-variable convention.
The tutorial dataset is for education only and must not be used for navigation.