Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Proposal] [OAI-PMH] Extensible record search #60

Open
rekt-hard opened this issue Mar 1, 2022 · 0 comments
Open

[Proposal] [OAI-PMH] Extensible record search #60

rekt-hard opened this issue Mar 1, 2022 · 0 comments
Assignees
Labels
Proposal: Pending Proposal for new RFC, pending triage

Comments

@rekt-hard
Copy link
Contributor

rekt-hard commented Mar 1, 2022

Motivation

Why are we doing this? What user stories does it support? What is the expected outcome?

Currently, there is no support for different record data models (f.e. LOM, Marc21). Modules that bring support for other record data models should also have their own elasticsearch index (f.e. lom-records, marc21-records), database tables, services, etc., as the metadata format differs from rdm-records.

This change would allow other modules to hook into the invenio-oaiserver module and provide the respective records via the OAI protocol, without having to implement this themselves.

Outcome is to have one endpoint for a combined harvesting possibility of all records - no matter the model. Further filtering can be achieved via sets.

Summary

What are you proposing to change (high-level overview only)?

  • Introduce data model configuration variable(s) which other modules can extend
    • f.e.
      OAISERVER_DATA_MODELS = {
        'rdm_records': {
          'es_index': 'rdmrecords-records',
          'record_cls': invenio_rdm_records.records.api:RDMRecord,
          ...
        }
      }
  • Adapt implementation of OAI-PMH verbs to take data model configuration into account
  • Provide endpoint per data model and/or one global endpoint

Resources

Which resources do you have available to implement this RFC and what is your overall timeline?

2 days per week from my side (as of right now)

@rekt-hard rekt-hard added the Proposal: Pending Proposal for new RFC, pending triage label Mar 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Proposal: Pending Proposal for new RFC, pending triage
Projects
None yet
Development

No branches or pull requests

5 participants