geopython / pycsw

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.
https://pycsw.org
MIT License
206 stars 155 forks source link

support for datacite schema on the oai-pmh endpoint #898

Closed pvgenuchten closed 1 year ago

pvgenuchten commented 1 year ago

Overview

Introduces the datacite MetadataFormat to the oai-pmh endpoint (commonly used in research repositories) as suggested in #623.

Fixes some problems with namespaces/identifiers

Ambition to add additional properties

Related Issue / Discussion

based on work by @cfenell at https://github.com/cfenell/pycsw/blob/datacite/pycsw/plugins/outputschemas/datacite.py

Additional Information

The following calls can be made with above work:

Contributions and Licensing

(as per https://github.com/geopython/pycsw/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

pvgenuchten commented 1 year ago

test problem is on csw getcapabilities test, the datacite schema is also advertised for csw

tomkralidis commented 1 year ago

Fantastic work here!

  1. We need docs updates in :
  1. Do we envision Transactions of DataCite records, or solely an output format? If we do, we need to add a parser (in pycsw/core/metadata.py and https://docs.pycsw.org/en/latest/transactions.html#supported-resource-types
pvgenuchten commented 1 year ago

Nice, thanx for docs pointer, I’ll work on that

Datacite ingest is not on my radar now, maybe in a future iteration