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

OAI-PMH integration #130

Open
20 tasks
skasberger opened this issue Apr 2, 2021 · 1 comment
Open
20 tasks

OAI-PMH integration #130

skasberger opened this issue Apr 2, 2021 · 1 comment
Assignees
Labels
pkg:api api related activities pkg:models models related activities prio:medium status:confirmed Is a valid issue and will be moved forward soon. type:feature New feature

Comments

@skasberger
Copy link
Member

skasberger commented Apr 2, 2021

Integrate OAI-PMH endpoint and data conversion.

Requirements

  • Mapping of data from OAI-PMH endpoint (DDI XML and/or DC)
  • Import of data
  • Export of data
  • XML schema
  • validate against schema

ACTIONS

0. Pre-Requisites

1. Research

pyoai

from oaipmh.client import Client
from oaipmh.metadata import MetadataRegistry, oai_dc_reader
url = "https://data.aussda.at/oai"
registry = MetadataRegistry()
registry.registerReader('oai_dc', oai_dc_reader)
client = Client(URL, registry)

for record in client.listRecords(metadataPrefix='oai_dc'):
  print(record)

oai-harvest

oai-harvest --set "all_published" --metadataPrefix "oai_ddi" https://data.aussda.at/oai

sickle

from sickle import Sickle
sickle = Sickle('https://data.aussda.at/oai')
records = sickle.ListRecords(metadataPrefix='oai_ddi')
record = records.next()
record.header
record.header.identifier
record.metadata

2. Plan

  • Define requirements

3. Implement

  • Write tests
  • Write code
  • Write and update Docs
  • Write Docstrings
  • Run pytest
  • Run tox
  • Run pylint
  • Run mypy

4. Follow Ups

  • Review
    • Code
    • Tests
    • Docs
@skasberger skasberger added type:feature New feature pkg:models models related activities pkg:api api related activities prio:medium status:confirmed Is a valid issue and will be moved forward soon. labels Apr 2, 2021
@skasberger skasberger added this to the Later milestone Apr 2, 2021
@skasberger skasberger self-assigned this Apr 2, 2021
@pdurbin
Copy link
Member

pdurbin commented Mar 4, 2024

As discussed during the 2024-02-14 meeting of the pyDataverse working group, we are closing old milestones in favor of a new project board at https://github.com/orgs/gdcc/projects/1 and removing issues (like this one) from those old milestones. Please feel free to join the working group! You can find us at https://py.gdcc.io and https://dataverse.zulipchat.com/#narrow/stream/377090-python

@pdurbin pdurbin removed this from the Later milestone Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg:api api related activities pkg:models models related activities prio:medium status:confirmed Is a valid issue and will be moved forward soon. type:feature New feature
Projects
None yet
Development

No branches or pull requests

2 participants