pycsw is an OGC CSW server implementation written in Python. pycsw fully implements the OpenGIS Catalogue Service Implementation Specification [Catalogue Service for the Web]. Initial development started in 2010 (more formally announced in 2011). The project is certified OGC Compliant, and is an OGC Reference Implementation. pycsw allows for the publishing and discovery of geospatial metadata via numerous APIs (CSW 2/CSW 3, OpenSearch, OAI-PMH, SRU). Existing repositories of geospatial metadata can also be exposed, providing a standards-based metadata and catalogue component of spatial data infrastructures. pycsw is Open Source, released under an MIT license, and runs on all major platforms (Windows, Linux, Mac OS X). Please read the docs at https://pycsw.org/docs for more information.
Because harvesting records from platform to platform is quite common these days, it would be interesting to capture on a record on which source platforms it is available, and preferably to provide a link to the record in those platforms. In google dataset search for example it is quite common to display a list of platforms on which the google crawler has located a dataset.
Storage
This property should be stored separately from the metadata, because it will be impacted when the same dataset is identified in a new platform.
This information can be returned in the link section of OGCAPI Records, the use of rel='canonical' is interesting here, however usually only a single canonical url exists (which one?). Probably a rel='closeMatch' is better
Ingesting duplicates
Currently the load-records option in pycsw-admin skips new records which share a uuid with an existing record (i'm not sure if this is also the case for harvesters). Instead a new record could be created in the record-sources table, to indicate the record has also been found on another platform.
Some platforms (such as openaire.eu) already provide information on which source platforms a record has been identified, this information could be ingested in the record-sources directly
Description
Because harvesting records from platform to platform is quite common these days, it would be interesting to capture on a record on which source platforms it is available, and preferably to provide a link to the record in those platforms. In google dataset search for example it is quite common to display a list of platforms on which the google crawler has located a dataset.
Storage
This property should be stored separately from the metadata, because it will be impacted when the same dataset is identified in a new platform.
OGCAPI Records
This information can be returned in the link section of OGCAPI Records, the use of
rel='canonical'
is interesting here, however usually only a single canonical url exists (which one?). Probably arel='closeMatch'
is betterIngesting duplicates
Currently the load-records option in pycsw-admin skips new records which share a uuid with an existing record (i'm not sure if this is also the case for harvesters). Instead a new record could be created in the record-sources table, to indicate the record has also been found on another platform.
Some platforms (such as openaire.eu) already provide information on which source platforms a record has been identified, this information could be ingested in the record-sources directly