ead2dc
Converts ArchivesSpace EAD Finding Aid XML to an OAI-PMH Static Repository with DC metadata.
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.0%) to scientific vocabulary
Repository
Converts ArchivesSpace EAD Finding Aid XML to an OAI-PMH Static Repository with DC metadata.
Basic Info
- Host: GitHub
- Owner: caltechlibrary
- License: other
- Language: Python
- Default Branch: main
- Size: 7.91 MB
Statistics
- Stars: 0
- Watchers: 5
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
ArchiveSpace OAI/EAD to OAI/DC Conversion
There are two components to this service:
- A Python 3 script to convert ArchivesSpace Encoded Archival Description (EAD) finding aids to Dublin Core (DC) records.
- An Open Archives Initiative (OAI) data provider to provide access to the DC records.
Table of contents
Introduction
The Python 3 script, ead2dc.py, takes as its input the Open Archives Initiative (OAI) output of an ArchivesSpace resource finding aid in Encoded Archival Description (EAD) format and outputs an XML file. The XML output contains Dublin Core (DC) records for digital resources found in the finding aid. Only records containing links to digital objects are included. The XML output is a 'static repository', inspired by the OAI Static Repository specification, but not adhering to it strictly. The static repository is the data source for the Open Archives Initiative (OAI) Data Provider.
The OAI Data Provider adheres to the OAI standard and supports all the verbs (Identify, ListMetadataFormats, ListSets, ListIdentifiers, ListRecords, and GetRecord), resumption tokens, and sets. Only DC metadata is provided. Sets correspond to the archival collections in the Caltech Archives.
ead2dc - Main features and assumptions:
- Both input and output are OAI-compliant XML files.
- All 12 levels of EAD container are supported.
- Titles are inherited down the container hierarchy.
- All other metadata is mapped from the record containing the digital object references.
- Records without digital object references are ignored (i.e. not mapped to the output file)
OAI Data Provider - Main features and assumptions:
- The OAI Data Provider uses a static repository, i.e. it does not dynamically generate records.
- DC metadata only.
- Sets correspond to the archival collections and do not overlap.
- Records are delivered in batches of 250.
Installation and Usage
The ead2dc.py file is designed to be run from the command line, or from within your favorite editing environment. It uses standard Python libraries and has been tested using Python 3.9.10 and 3.9.17.
The OAI Data Provider is a web application written in Python 3 using the Flask micro web framework. Installation of Flask will include dependent libraries, such as Jinja2 and werkzeug. No additional libraries are required.
Mapping
| Element | Encoded Archival Description | Dublin Core |
|---|---|---|
| Collection title | archdesc/did/unittitle | title |
| Container titles | dsc/c??/did/unittitle | title |
| Personal creators | dsc/c??/did/origination label="creator"/persname | creator |
| Corporate creators | dsc/c??/did/origination label="creator"/corpname | creator |
| Dates | dsc/c??/did/unitdate | date |
| Extent | dsc/c??/did/physdesc/extent | extent |
| Description | dsc/c??/did/abstract | description |
| Subject, general | dsc/c??/controlaccess/subject | subject |
| Subject, geographic | dsc/c??/controlaccess/geogname | subject |
| Subject, person | dsc/c??/controlaccess/persname | subject |
| Subject, corporate | dsc/c??/controlaccess/corpname | subject |
| Subject, activity | dsc/c??/controlaccess/function | subject |
| Identifier | dsc/c??/did/unitid | identifier |
| Identifier, link | dsc/c??/did/daogrp/daoloc['xlink:href'] | identifier |
Example
Paul B. MacCready Papers ca. 1931-2002, Caltech Archives
License
Software produced by the Caltech Library is Copyright © 2023 California Institute of Technology. This software is freely distributed under a BSD-style license. Please see the LICENSE file for more information.
References
- OAI Static Repositories
- DCMI Metadata Terms
- Dublin Core Qualifiers
- Guidelines for implementing DC in XML
Acknowledgments
This work was funded by the California Institute of Technology Library.
Owner
- Name: Caltech Library
- Login: caltechlibrary
- Kind: organization
- Email: helpdesk@library.caltech.edu
- Location: Pasadena, CA 91125
- Website: https://www.library.caltech.edu/
- Repositories: 84
- Profile: https://github.com/caltechlibrary
We manage the physical and digital holdings of the California Institute of Technology, provide services and training, and develop open-source software.
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"@type": "SoftwareSourceCode",
"description": "A Python 3 script to convert ArchivesSpace Encoded Archival Description (EAD) finding aids to Dublin Core (DC) records.",
"name": "ead2dc",
"codeRepository": "https://github.com/caltechlibrary/ead2dc",
"issueTracker": "https://github.com/caltechlibrary/ead2dc/issues",
"license": "https://github.com/caltechlibrary/ead2dc/blob/main/LICENSE",
"version": "0.1",
"author": [
{
"@type": "Person",
"givenName": "Stephen",
"familyName": "Davison",
"affiliation": {
"@type": "Organization",
"name": "Caltech"
},
"email": "sdavison@caltech.edu",
"@id": "https://orcid.org/0000-0003-0102-8200"
}
],
"developmentStatus": "active",
"downloadUrl": "https://github.com/caltechlibrary/ead2dc/archive/main.zip",
"keywords": [
"software",
"metadata",
"Open Archives Initiative Protocol for Metadata Harvesting",
"Dublin Core"
],
"maintainer": [
{
"@type": "Person",
"givenName": "Stephen",
"familyName": "Davison",
"affiliation": {
"@type": "Organization",
"name": "Caltech Library"
},
"email": "EMAIL",
"@id": "https://orcid.org/0000-0003-0102-8200"
}
],
"funder": [
{
"@id": "https://doi.org/10.13039/100006961",
"@type": "Organization",
"name": "Caltech Library"
}
]
}
GitHub Events
Total
- Push event: 456
Last Year
- Push event: 456
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- EndBug/add-and-commit v7 composite
- actions/checkout v2 composite
- caltechlibrary/codemeta2cff main composite
- caltechlibrary/iga main composite