-
Notifications
You must be signed in to change notification settings - Fork 22
OpenAIRE
📝 This page needs more work IMO not using Choice/Authority plugin, https://github.com/ufal/clarin-dspace/issues/1170 is on radar
If the data should be exported in OpenAIRE dataset, is chosen by the user during submission by selecting the appropriate European project that funded it. The suggestion box appears after typing the preset number of characters (usually project id or name). At least 4 chars are needed at the time being. Lower numbers leads to quite a lot of false positives as the search is done using "contains".

The edit metadata section uses a bit different mechanism. After you've added the dc.relation field, enter your search term as the value and click lookup

A new window will open where you can select the project. Use reasonable search terms (id or name) as only 10 first matches are shown.

dspace/config/crosswalks/oai/xoai.xml defines three OAI-PMH contexts for OpenAIRE; the first two come from upstream (see the docs there):
openaire(base URLoai/openaire) – compliant with OpenAIRE Guidelines 3.0; applies theopenaire.xsltransformer and exposesoai_dc/metsmetadata formats.openaire4(base URLoai/openaire4) – compliant with OpenAIRE Guidelines 4.0; appliesopenaire4.xsland exposes theoai_openairemetadata format.-
openaire_data(base URLoai/openaire_data) – exports items inoai_dataciteformat and defines theopenaire_dataset required by the data-archive guidelines. Only items whosedc.relationstarts withinfo:eu-repo/grantAgreement/EC/FPare included.
datacite_openaire.xsl currently exports only the mandatory and mandatory-when-applicable fields, with the exception of RelatedIdentifier. None of the recommended or optional fields is implemented.
The relevant XSL files live in dspace/config/crosswalks/oai/:
transformers/openaire.xsl– OpenAIRE Guidelines 1.1 crosswalktransformers/openaire4.xsl– OpenAIRE Guidelines 4.0 crosswalk (ISO 639-3 language normalization, COAR access-rights vocabulary)metadataFormats/oai_openaire.xsl– OAI_OpenAIRE metadata format (Guidelines 4.0)-
metadataFormats/datacite_openaire.xsl– DataCite / OpenAIRE schema mapping
- creators - mapped from dc.contributor.author, probably not sorted according to importance as the guidelines suggests.
- publicationYear - using year from dc.date.issued, some suggest year of embargo end should be used when embargo is in place
- contributor with type funder - mapped from dc.relation where the info:eu-repo… value is stored
- dates
- Issued - dc.date.issued
- Accepted - dc.date.accessioned. When item is embargoed this is the start of the embargo period.
- Available - either dc.date.available or local.embargo.termslift. This indicates the end of embargo period.
- rights - display embargoedAccess for items with embargo, restrictedAccess for items (licenses) wanting extra information, openAccess for the rest. Displays also the license uri
- description type Abstract - using dc.description
- identifier, title and publisher are straight forward
Some extra info was added to the oai solr. Rebuild of oai solr is needed:
/dspace/bin/dspace oai import
OAI-PMH is configured in dspace/config/modules/oai.cfg:
oai.enabled = true
oai.path = oai
oai.storage = solr
oai.config.dir = ${dspace.dir}/config/crosswalks/oai
In v7 the funding lookup uses the OpenAIRE REST API directly (no local cache file). The REST connector and data provider are wired via Spring in dspace/config/spring/api/external-openaire.xml.
dspace/config/modules/openaire-client.cfg:
openaire.api.url = https://api.openaire.eu
openaire.token-service.url = https://aai.openaire.eu/oidc/token
Unauthenticated requests are limited to 60 per hour. For higher throughput, register an OpenAIRE API client and set the credentials:
openaire.client.id =
openaire.client.secret =
The FE does not use the Choice/Authority plugin. Instead, DsDynamicSponsorAutocompleteComponent (tied to the local.sponsor complex field) manually constructs an ExternalSource object and queries the BE external-sources REST API:
User types in funding field (EU sponsor type selected)
↓
DsDynamicSponsorAutocompleteComponent
constructs ExternalSource { id: 'openAIREFunding' }
calls LookupRelationService.getExternalResults()
→ ExternalSourceDataService
→ GET /api/integration/externalsources/openAIREFunding/entries?query=…&page=1&size=20
↓
ExternalSourcesRestController (BE)
→ ExternalDataService
→ OpenAIREFundingDataProvider (bean id: openAIREFunding, wired in external-openaire.xml)
→ OpenAIRERestConnector
→ GET https://api.openaire.eu/search/projects?keywords=…
(XML response, JAXB-unmarshaled; entry IDs are base64-encoded grant URIs)
↓
Response: paginated ExternalSourceEntry objects with metadata:
project.funder.name / project.funder.identifier
dc.title / dc.title.alternative
oaire.awardNumber / oaire.awardURI / oaire.fundingStream
dc.subject / dc.coverage.spatial
On selection the component calls composeSponsorInput(), which assembles the stored local.sponsor value:
EU;<grantCode>;<funderName>;<projectTitle>;info:eu-repo/grantAgreement/…
#### OpenAIRE metadata schema
The oaire metadata schema is registered in dspace/config/registries/openaire4-types.xml and defines fields such as oaire.fundingStream, oaire.awardNumber, oaire.awardURI, oaire.awrdTitle, oaire.version, and oaire.citation.*.
Entity relationships for OpenAIRE 4.0 (publication–person, publication–orgunit) are defined in dspace/config/entities/openaire4-relationships.xml.
-
http://validator.openaire.eu/ to register and check the repository
- (2016-06-15) to register you need your repository to be in re3data https://www.openaire.eu/validator/populateDoarList.action?mode=re3data
- https://wiki.duraspace.org/display/DSDOC4x/OAI+2.0+Server\#OAI2.0Server-OpenAIREcompliance OpenAIRE authority control addon
- https://guidelines.openaire.eu/wiki/OpenAIRE\_Guidelines:\_For\_Data\_Archives guidelines
- https://www.openaire.eu/open-access-info/open-access-in-fp7-seventh-research-framework-programme more information link from submission step
Getting Started
Features
- All Features — full categorised list
- CLARIN Licenses
- PIDs & Handles
- Featured Services / Refbox
- Field-Level Permissions
- File Previews
- Sharing a Submission
- Personal Access Tokens
- DOI Configuration per Community
- ROR Authority
Operations
- Kubernetes Deployment
- Samples (.env, Nginx)
- Nginx + Shibboleth
- Handle Server · Setup (v7)
- Shibboleth · DiscoJuice
- Shibboleth Accounts
- S3 Storage · CESNET S3
- Google Analytics
- Matomo
- Solr
- Logging
- Custom Namespace
- Health Report
For Users
Development
Reference
- Authorizations
- Metadata Info
- Citations (proposal)
- Repository Checklist
- Search, Browse & Filters
- Localization
- Importing Items (CLI)
- NFA Import - Steps
- OpenAIRE
- DOI Registration
- Inclusion in OLAC
- Unit Testing
- Deploy Checks
- Troubleshooting
- Versioning Theory
- Dynamic Resource Versioning
- Metashare Import · Schema
- Web Server Overview
- LINDAT Common Theme
- Workshop 2016 Results
- WebLicht Integration
- Google Dataset Search
Archive (v5 / stale)
- Old Home (v5)
- Installation (v5)
- Prerequisites (v5)
- Connecting Tomcat with Apache
- Using Apache
- Building Shibboleth FastCGI
- Shibboleth Install (v5)
- EUDAT Replication
- Backup (v5)
- Spring Social / Google Drive (v5)
- Clarin (→ Repository Checklist)
- Control Panel (v5)
- Overlays (v5)
- Configuration (v5)
- Speeding Up Downloads
- Debugging (v5)
- Selenium (v5)
- Code Contributions (v5)
- Best Practices (v5)
- Testing Hudson
- Working on Windows
- Prerequisites Checklist (v5)
- Migration to DSpace 7.2.1
- Upgrade From Lindat
- Piwik (→ Matomo) · Piwik Cleaning