While one does not absolutely have to run a publishing registry to get into the IVOA Registry[1], larger data centres certainly will want to do that. As per Registry Interfaces, in principle this does not require much more than a server speaking OAI-PMH. However, assembling the various building blocks has proven to be somewhat tedious. This repository's eventual goal is to provide a solid code base to run a VO-compliant OAI-PMH service with minimal work to deployers.
In a first step, we collect the server code in use at the various places. Let's see what that yields.
Pointers to out-of-repo resources:
- NOIRLab has a publishing registry implementation in python that looks as if it could be rather easily adopted by third parties.
- The CDS uses pyoai
- CADC has a java-based, containerable publishing registry; see https://github.com/opencadc/reg/
The generation of VOResource records is explicitly out of scope for this project; this is far too tightly linked to each data centre's representation of its resources' metadata.
- DaCHS: this is simply the content of the gavo.registry module as of DaCHS 2.8. Due to its tight integration into the publishing suite DaCHS, it is unlikely that much of this is readily re-usable in generic code. In particular, the resource records are always created on the fly in that software. Most of the code in this directory exactly deals with that and hence is, strictly speaking, out of scope. Still, a glance at oaiinter may help.
[1] | If you are unsure what this is talking about, have a look at http://adsabs.harvard.edu/abs/2014A%26C.....7..101D |