Skip to content

Add stac-table-columns renderer to overture-schema-codegen #723

Description

Type

Task

Scope

Multi-theme or Platform

Skillset

engineering

Description

Context

The STAC catalog at stac.overturemaps.org emits table:columns with only column names — no type or description. Consumers reading the catalog have no way to discover what a column means without leaving STAC and going to the schema docs. The information already lives in the Pydantic models; a new codegen renderer can surface it as machine-readable JSON that the STAC generator consumes at build time.

Proposed change

In packages/overture-schema-codegen/src/overture/schema/codegen/, alongside markdown/ and pyspark/:

  • Add a stac_table_columns/ renderer that emits one JSON file per (theme, type), matching the STAC table extension table:columns shape: [{"name", "type", "description"}].
  • type maps from the Pydantic field's resolved primitive to STAC/parquet types (string, int32, int64, double, boolean, struct, list). Reuse extraction logic already used by the pyspark renderer where possible.
  • description comes from the field's docstring / description text.
  • Wire into the CLI as a new --format option so overture-codegen generate --format stac-table-columns --output-dir out/ writes buildings/building.json, places/place.json, etc.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions