Dataset lifecycle

A dataset can be useful before it is complete. Use the status field in datapackage.json to describe how far the work has progressed; not every dataset needs every stage.

StatusWhat it meansNext step
captureA source URL or idea, with a short note about why it mattersDecide whether to explore it
stubA title, description and source link; no data files requiredPreserve the source
archivedRaw source files saved with provenanceExtract and structure the data
structuredTidy data with typed schemas and a reproducible buildPublish, analyse or reuse it
enrichedAnalysis, visualisations or derived data addedWrite a story or share the findings
monitoredA living source with versioned updatesCheck and record changes over time

Capture an idea

Save the URL or file reference and one to three lines explaining what is interesting and what data might exist. Capture should be quick: downloading and validation can wait. Use the capture skill to preserve the idea.

If you have a question but no source, start with source discovery.

Create a stub

Use init to scaffold a dataset directory with datapackage.json, data/, .datahubignore and AGENTS.md. Add a clear title, description and source link, and set "status": "stub". A stub is publishable without data files.

Archive the source

Use archive to save a raw snapshot and record the source URL, retrieval time and licence. Record checksums or versions where available. Once a dataset leaves stub, sources and licenses are required metadata; an unresolved licence needs investigation, not an invented permission to republish.

Structure the data

Use structure to produce tidy CSVs and document coverage, units and assumptions. A structured dataset must have:

  • UTF-8 CSVs without a BOM, with LF line endings, snake_case columns and empty cells for missing values.
  • One observation per row, one value per cell and ISO dates.
  • A resource entry for every published data file, with typed schema fields and a primary key where one exists.
  • Recorded sources and licences.
  • A checked-in build script that reproduces the outputs from the archived snapshot.
  • A clean /validate result with no warnings.

See assistant setup and commands for validation and publication. These workflows assume small data that fits comfortably in memory, well under roughly 1 GB raw; larger sources need a different approach.

Enrich and tell a story

Use enrich for summary statistics, initial dataset views and derived data. Use story when the findings support an argument: review the outline, build the charts, then write the prose. See story craft and charting.

Monitor when updates matter

For living sources, preserve successive snapshots, compare releases and record the update schedule. monitored describes a dataset maintained this way; an automated monitor skill is not yet available.

A source can contain several datasets at different stages. Keep the catalog, dataset and data file distinct when organising them.

Built with LogoFlowershow