Files
pygeoapi/docs/source/data-publishing/stac.rst
T
2021-05-18 06:46:36 -04:00

61 lines
1.9 KiB
ReStructuredText

.. _stac:
Publishing files to a SpatioTemporal Asset Catalog
==================================================
The `SpatioTemporal Asset Catalog (STAC)`_ specification provides an easy approach
for describing geospatial assets. STAC is typically implemented for imagery and
other raster data.
pygeoapi implements STAC as an geospatial file browser through the FileSystem provider,
supporting any level of file/directory nesting/hierarchy.
Configuring STAC in pygeoapi is done by simply pointing the ``data`` provider property
to the given directory and specifying allowed file types:
Connection examples
-------------------
.. code-block:: yaml
my-stac-resource:
type: stac-collection
...
providers:
- type: stac
name: FileSystem
data: /Users/tomkralidis/Dev/data/gdps
file_types:
- .grib2
.. note::
``rasterio`` and ``fiona`` are required for describing geospatial files.
pygeometa metadata control files
--------------------------------
pygeoapi's STAC filesystem fuctionality supports `pygeometa`_ MCF files residing
in the same directory as data files. If an MCF file is found, it will be used
as part of generating the STAC item metadata (e.g. a file named ``birds.csv``
having an associated ``birds.yml`` file). If no MCF file is found, then
pygeometa will generate the STAC item metadata from configuration and by
reading the data's properties.
Publishing ESRI Shapefiles
--------------------------
ESRI Shapefile publishing requires to specify all required component file extensions
(``.shp``, ``.shx``, ``.dbf``) with the provider ``file_types`` option.
Data access examples
--------------------
- STAC root page
- http://localhost:5000/stac
From here, browse the filesystem accordingly.
.. _`SpatioTemporal Asset Catalog (STAC)`: https://stacspec.org
.. _`pygeometa`: https://geopython.github.io/pygeometa