Metadata, Licensing & Provenance

A layer nobody can describe, cite or re-run is a layer nobody should use.

The question that ends most spatial analyses is not technical: where did this come from, which version is it, and are we allowed to publish it? These guides cover the record that has to travel with the data — what a metadata document must state, which standard to write it in, how to keep it inside the file rather than beside it, how to checksum and version a dataset so two people can prove they have the same one, and how to read a licence well enough to know what combining two layers produces.

20 Steps in this path

The full path, in order

20 guides: the concepts underneath the work, then each task, then the errors that task produces. Work down, or jump to the step you need.

  1. Open data licences explained for spatial data open data licence gis 🧭 Concept
  2. Provenance and lineage explained for spatial workflows spatial data lineage 🧭 Concept
  3. Dataset versioning explained dataset versioning gis 🧭 Concept
  4. Metadata standards compared: ISO 19115, STAC and Frictionless iso 19115 stac compared 🧭 Concept
  5. Attribution requirements explained: OpenStreetMap, Copernicus and national data openstreetmap attribution requirement 🧭 Concept
  6. How to write a metadata record for a dataset in Python write spatial metadata python ⚙️ How-To
  7. How to read the metadata already inside your spatial files read gis file metadata python ⚙️ How-To
  8. How to embed provenance tags in a GeoTIFF geotiff metadata tags python ⚙️ How-To
  9. How to store metadata inside a GeoPackage geopackage metadata python ⚙️ How-To
  10. How to checksum spatial datasets so you can prove they match checksum spatial dataset python ⚙️ How-To
  11. How to build a STAC item for your own raster build stac item python ⚙️ How-To
  12. How to record lineage automatically in a pipeline record lineage pipeline python ⚙️ How-To
  13. How to check licence compatibility before combining datasets licence compatibility gis python ⚙️ How-To
  14. How to publish a dataset with a citable identifier publish dataset doi python ⚙️ How-To
  15. Metadata disappears when you convert the file metadata lost format conversion 🔧 Fix
  16. You cannot tell which data version produced a map which data version produced map 🔧 Fix
  17. A downloaded layer has no licence you can find layer has no licence 🔧 Fix
  18. A STAC item is rejected by the validator stac item validation error 🔧 Fix
  19. Metadata extents and dates do not match the data metadata extent does not match 🔧 Fix

Topics this path covers

A path is a route; a topic is everything the site has on a subject. Open a topic to see the guides this path skips.

Other ways in