Skip to content

geojson/schema

Repository files navigation

GeoJSON Schema

This repository provides tools for building JSON Schema docs for GeoJSON. A schema is generated for each of the GeoJSON object types, and each individual doc is complete (without $refs to other documents). So applications can consume just what they need and avoid extra fetching.

See JSON Schema docs for the GeoJSON types below:

The overall GeoJSON schema can be found at

The schema files are also published to the geojson-schema package on npm. You can add them as a dependency to your project with the following:

npm install geojson-schema

Limitations

The schema can not be used to validate that linear rings are closed or that they follow the right-hand rule. These two elements of the GeoJSON specification cannot be represented in JSON Schema. To enforce these two elements of linear ring validation, parsers must implement their own logic on top of JSON Schema validation.

Development

Install dependencies:

npm install

To build the schema docs:

make

The output will be in the build directory.

A CI job builds commits pushed to main. After a successful build, artifacts are pushed to the gh-pages branch and will be accessible at geojson.org/schema/.json (e.g. https://geojson.org/schema/Point.json).

Status

Publishing

To publish the geojson-schema package, run the following:

npm version minor # or major or patch
make build
git push --tags origin main
pushd build && npm publish && popd