You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Unmerged features

Please note that the functionalities here described are not yet fully merged in the official branch and they partially live in the openaire_cris branch. This is specifically true for the compliance with the OpenAIRE Guidelines for CRIS Manager and for the out-of-box configuration


DSpace-CRIS provides a strong out-of-box integration with OpenAIRE.

There are three are of integration:

  • OpenAIRE Guidelines compliance for Literature Repository, DataArchive and CRIS System
  • OpenAIRE Project API
  • OpenAIRE’s Usage Statistic service

OpenAIRE Guidelines

OAI-PMH pecularity in DSpace-CRIS

Please be aware that DSpace-CRIS introduces some extra feature to the OAI-PMH Server as described in the latest paragraph of this section that are used to implement the OpenAIRE guidelines

Literature Repository

DSpace-CRIS has the same level of compatibility than the basic DSpace with the Literature Repository Guidelines v3

DataArchive

DSpace-CRIS ships with a custom OAI context implementing the OpenAIRE guidelines for DataArchive already updated to implement the DataCite metadata version 4

The default context is available at ${dspace.url}/oai/openairedata

xoai.xml
  <Context baseurl="openairedata" name="OpenAIRE Data Repository Context">
            <!-- OpenAIRE filter -->
            <Filter ref="openaireDataFilter"/>
            <!-- Just an alias, in fact it returns all items within the driver context -->
            <Set ref="openaireDataSet"/>
            <!-- Metadata Formats -->
            <Format ref="oaidc"/>
            <!-- set the reference at the new format called datacite41_openaire -->
            <Format ref="datacite41_openaire"/>
            <Description>
                This contexts complies with Data Archive OpenAIRE rules.
            </Description>
        </Context>
Please note that such endpoint supports the exposure of the ORCID identifiers for the authors!

CRIS System

DSpace-CRIS ships with a custom OAI context implementing the OpenAIRE guidelines for CRIS Manager v1.1.1 

The default context is available at ${dspace.url}/oai/openairecris

xoai.xml
 <Context baseurl="openairecris" name="OpenAIRE Context for CRIS System">
            <!-- Date format, field prefixes, etc are ensured by the transformer -->
            <Transformer ref="openairecrisTransformer"/>
            <Filter ref="openAireCRISFilter"/>
            <!-- Just an alias, in fact it returns all items within the driver context -->
            <Set ref="openairePublicationsCrisSet"/>
            <Set ref="openaireProductsCrisSet"/>
            <Set ref="openairePatentsCrisSet"/>
            <Set ref="openairePersonsCrisSet"/>
            <Set ref="openaireOrgunitsCrisSet"/>
            <Set ref="openaireProjectsCrisSet"/>
            <Set ref="openaireEventsCrisSet"/>
            <Set ref="openaireEquipmentsCrisSet"/>
            <!-- Metadata Formats -->
            <Format ref="oaidc"/>
            <Format ref="oai_cerif"/>
            <Description>
                This contexts complies with OpenAIRE rules for CRIS system v 1.1.1
            </Description>
        </Context>

The mapping is configured in the dspace/config/crosswalks/oai/metadataFormats/oai_cerif.xsl file

Please note that such endpoint supports the exposure of the ORCID identifiers for the authors as well the exposure of the richer set of information collected in DSpace-CRIS for each entity

OAI-PMH pecularity in DSpace-CRIS

DSpace-CRIS extends the functionalities of the OAI-PMH Server on three area:

  1. the index script identifies object to include in the OAI core (or to update) querying the search SOLR core. This mean that DSpace-CRIS must be indexed (discovery) before to run the XOAI script.  It is possible to configure a custom query to limit the amount of objects to index in addition to the standard capability to limit the OAI objects to expose over a specific OAI Context.
  2. the XOAI document embed information from the 1st level linked objects, i.e. data about person that have authored a publication or organisations that have funded a project
  3. nested metadata are stored in the XOAI document ensuring the possibility to read them as a whole group so to associate for instance the affiliation used in a publication with the specific author


The XOAI script has an additional option -t that allow to specify which type of entity is indexed: item, rp, project, ou, other, all.


The item.compile of the XOAI document embed the information of the linked object where available (i.e. when the authority points to a CRIS object) just after the metadata inside an <element name="authority" /> tag keeping the right sequence

item.compile of the XOAI document
<metadata
xmlns="http://www.lyncode.com/xoai"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.lyncode.com/xoai http://www.lyncode.com/xsd/xoai.xsd">
  <element name="dc">
    <element name="contributor">
      <element name="author">
        <element name="en_US">
          <field name="value">Cadili, Francesco</field>
          <field name="authority">rp00003</field>
          <field name="confidence">600</field>
          <element name="authority">
              <element name="crisrp">
                <element name="fullName">
                  <element name="none">
                    <element name="none">
                      <field name="value">Cadili, Francesco</field>
                    </element>
                  </element>
               </element>
               <element name="dept">
                  <element name="none">
                    <element name="none">
                      <field name="value">Department of ...</field>
                      <field name="authority">ou00001</field>
                      <field name="confidence">600</field>
                    </element>
                  </element>
               </element>
               ...
          </element>
          <field name="value">Unknown, Author</field>
          <field name="value">Another Internal, Author</field>
          <field name="authority">rp00005</field>
          <field name="confidence">600</field>
          <element name="authority">
			 .......

OpenAIRE Project API

A choiceAuthority is provided out of box in DSpace-CRIS to query the OpenAIRE project database via API to link a publication, dataset or patent with a project. 

The openAIRE Project authority is configured out-of-box for the dc.relation metadata

dspace.cfg
##### Authority Control Settings #####
plugin.named.org.dspace.content.authority.ChoiceAuthority = \
       org.dspace.app.cris.integration.ORCIDAuthority = RPAuthority,\
       org.dspace.content.authority.ItemAuthority = PublicationAuthority,\
       org.dspace.content.authority.ItemAuthority = DataSetAuthority,\
       org.dspace.app.cris.integration.OpenAIREProjectAuthority = ProjectAuthority,\...
# dc.relation, Publication / Product / Patent
choices.plugin.dc.relation = ProjectAuthority
choices.presentation.dc.relation = suggest
authority.controlled.dc.relation = true

Once the publication is approved the retrieved project is imported locally in a CRIS Project mapping the OpenAIRE information to the key attribute of the CRIS project entity.

cris-plugin.xml
<bean id="org.dspace.app.cris.integration.authority.AuthoritiesFillerConfig" class="org.dspace.app.cris.integration.authority.AuthoritiesFillerConfig">
		<property name="fillers">
			<map>
				<entry key="orcid">
					<bean class="org.dspace.app.cris.integration.authority.ORCIDImportFiller" parent="fullitemMetadataConfiguration" />
				</entry>
				<entry key="openAireProject">
					<ref bean="openAIREProjectImportFiller" />
				</entry>
...
</bean>

...

<bean id="openAIREProjectImportFiller" class="org.dspace.app.cris.integration.authority.OpenAIREProjectImportFiller" parent="fullitemMetadataConfiguration">
		<property name="searchService" ref="org.dspace.discovery.SearchService" />
		<property name="openAIREProjectService" ref="org.dspace.authority.openaireproject.OpenAIREProjectService" />
		<property name="customMapping">
			<bean class="java.util.HashMap" />
		</property>
	</bean>


OpenAIRE’s Usage Statistic service

The OpenAIRE plugin for DSpace has been integrated out-of-box in DSpace-CRIS and some compatibility issues have been solved so that no extra installation is required. 

To send usage statistics to OpenAIRE is sufficient to configure the relevant parameter in the build.properties

### OpenAIRE Piwik Tracker ###
oapiwik.piwik.siteID =
oapiwik.piwik.tokenAuth =
oapiwik.piwik.enabled =
  • No labels