Skip to content

Spatial Pack Layer

Schema for layer definitions within a Spatial Pack manifest

This schema defines 19 fields (3 required, 16 optional).

FieldTypeRequiredDescriptionConstraints
idstringYesLayer identifier (unique within pack)Pattern: ^[a-z][a-z0-9_.]+$. Examples: land.tenure, env.vegetation, elev.dem_5m
typestringYesLayer data typeValues: vector, raster, pointcloud
schemastringNoSchema identifier for layer attributesPattern: ^[a-z]+\.[a-z][a-z0-9_.]+\.v[0-9]+$. Examples: sp.land.tenure.v1, sp.env.vegetation.v1
schema_uristringNoResolvable URI to JSON Schema definitionFormat: uri
titlestringYesHuman-readable layer title-
descriptionstringNoLayer description and usage notes-
tilejsonstringNoURL to TileJSON metadata (for vector tiles)Format: uri
pmtilesstringNoURL to PMTiles fileFormat: uri
parquetstringNoPath or URL pattern to GeoParquet filesExamples: s3://bucket/path/*.parquet, ./layers/data.parquet
cogstringNoURL to Cloud Optimized GeoTIFF (for raster)Format: uri
copcstringNoURL to Cloud Optimized Point Cloud (for pointcloud)Format: uri
overviewsstringNoURL to overview file (.ovr)Format: uri
geometry_typestringNoOGC geometry type for vector layersValues: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection
raster_statsobjectNoStatistics for raster layers-
indexobjectNoSpatial index configuration-
statsobjectNoLayer statistics and quality metrics-
securityobjectNoLayer-level security settings-
validationobjectNoValidation status and conformance-
extensionsarray of stringNoExtension identifiers applied to this layerItem pattern: ^[a-z0-9]+:[a-z0-9_-]+@[0-9]+\.[0-9]+$. Item examples: sp:temporal@1.0, sp:versioning@1.0

Statistics for raster layers

FieldTypeRequiredDescriptionConstraints
minnumberNo-
maxnumberNo-
meannumberNo-
stddevnumberNo-
nodatanumberNo-

Spatial index configuration

FieldTypeRequiredDescriptionConstraints
h3_resintegerNoH3 resolution levelMin: 0. Max: 15
s2_levelintegerNoS2 cell levelMin: 0. Max: 30

Layer statistics and quality metrics

FieldTypeRequiredDescriptionConstraints
featuresintegerNoFeature countMin: 0
updated_atstringNoLast update timestampFormat: date-time
geometry_valid_pctnumberNoPercentage of valid geometriesMin: 0. Max: 100
attribute_completenessobject: {string: number}NoMap of attribute name to completeness ratio (0-1)-

Layer-level security settings

FieldTypeRequiredDescriptionConstraints
classificationstringNoSecurity classificationValues: public, internal, restricted
visibilityarray of stringNoRole patterns that can access this layerExamples: [demo:viewer, demo:analyst]. Item pattern: ^[a-z0-9]+:[a-z]+$

Validation status and conformance

FieldTypeRequiredDescriptionConstraints
conformance_uristringNoURL to conformance reportFormat: uri
statusstringNoValidation statusValues: pass, fail, warn, pending
validatorstringNoValidator name and version-
rule_set_hashstringNoHash of validation rule set used-
errorsintegerNoMin: 0
warningsintegerNoMin: 0

These rules apply conditionally based on the value of other fields.

WhenConditionThen
type is vector-geometry_type field is available
type is raster-cog field is required