Page History
...
To understand how XOAI works, one must understand the concept of Filter, Transformer and Context. With a Filter it is possible to select information from the data source. A Transformer allows one to make some changes in the metadata before showing it in the OAI interface. XOAI also adds a new concept to the OAI-PMH basic specification, the concept of context. A context is identified in the URL:
Code Block |
---|
http://www.example.com/oai/<context>
|
...
OAI Manager (Solr Data Source)
OAI manager it's an is a utility that allows one to do some certain administrative operations with OAI.
Syntax
bin[dspace]/bin/dspace oai <action> [parameters]
...
In order to refresh the OAI Solr index, it is required to run the {{[dspace]/bin/dspace oai import }}command periodically. You can add the following task to your crontab:
Code Block |
---|
0 3 * * * [dspace]/bin/dspace oai import
|
...
OAI manager it's an utility that allows one to do some administrative operations with OAI.
Syntax
bin[dspace]/bin/dspace oai <action> [parameters]
...
In order to refresh the OAI cache and compile DSpace items (for fast responses), it is required to run the {{[dspace]/bin/dspace xoai compile-items }}command periodically. You can add the following task to your crontab:
Code Block |
---|
0 3 * * * [dspace]/bin/dspace oai compile-items
|
...
Each context could have it's own metadata formats. So to add/remove metadata formats to/from it, just need add/remove it's reference within xoai.xml, for example, imagine one need to remove the XOAI schema from:
Code Block |
---|
<Context baseurl="request">
<Format refid="oaidc" />
<Format refid="mets" />
<Format refid="xoai" />
<Format refid="didl" />
<Format refid="dim" />
<Format refid="ore" />
<Format refid="rdf" />
<Format refid="etdms" />
<Format refid="mods" />
<Format refid="qdc" />
<Format refid="marc" />
<Format refid="uketd_dc" />
</Context>
|
Then one would have:
Code Block |
---|
<Context baseurl="request">
<Format refid="oaidc" />
<Format refid="mets" />
<Format refid="didl" />
<Format refid="dim" />
<Format refid="ore" />
<Format refid="rdf" />
<Format refid="etdms" />
<Format refid="mods" />
<Format refid="qdc" />
<Format refid="marc" />
<Format refid="uketd_dc" />
</Context>
|
It is also possible to create new metadata format by creating a specific XSLT for it. All already defined XSLT for DSpace could be found within directory ${dspace.dir}/config/modules/oai/metadataFormats. So after producing a new one, in ${dspace.dir}/config/modules/oai/xoai.xml* add* *inside element <Formats> the following information:
Code Block |
---|
<Format id="[IDENTIFIER]">
<Prefix>[PREFIX]</Prefix>
<XSLT>metadataFormats/[XSLT]</XSLT>
<Namespace>[NAMESPACE]</Namespace>
<SchemaLocation>[SCHEMA_LOCATION]</SchemaLocation>
</Format>
|
...
Parameter | Description |
---|---|
IDENTIFIER | The identifier used within context configurations to reference this specific format, must be unique within all Metadata Formats available. |
PREFIX | The prefix used in OAI interface (metadataPrefix=PREFIX). |
XSLT | The name of the XSLT file within ${dspace.dir}[dspace]/config/modules/oai/metadataFormats directory |
NAMESPACE | XML Default Namespace of the created Schema |
SCHEMA_LOCATION | URI Location of the XSD of the created Schema |
...