0% found this document useful (0 votes)
203 views34 pages

Module - DSpace Configuration (Slides)

The document discusses configuring DSpace, including modifying the item submission process, configuring emails and notifications, enabling RSS feeds, and configuring nightly scripts. It describes how to: - Change the order of steps in the submission process by rearranging <step> tags in item-submission.xml. - Customize metadata fields collected during submission by modifying input-forms.xml to add/remove <field> definitions and mapping collections to specific forms. - Configure email templates and subscriptions in dspace.cfg. - Enable RSS feeds by setting webui.feed.enable to true in dspace.cfg and configuring additional feed settings. - Run nightly scripts

Uploaded by

Teo Tokis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
203 views34 pages

Module - DSpace Configuration (Slides)

The document discusses configuring DSpace, including modifying the item submission process, configuring emails and notifications, enabling RSS feeds, and configuring nightly scripts. It describes how to: - Change the order of steps in the submission process by rearranging <step> tags in item-submission.xml. - Customize metadata fields collected during submission by modifying input-forms.xml to add/remove <field> definitions and mapping collections to specific forms. - Configure email templates and subscriptions in dspace.cfg. - Enable RSS feeds by setting webui.feed.enable to true in dspace.cfg and configuring additional feed settings. - Run nightly scripts

Uploaded by

Teo Tokis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 34

The DSpace Course

Module - DSpace Configuration

Module objectives

By the end of this module you will:


Understand how to configure the submission
interface via input-forms.xml
How to configure Emails/Notifications &
Subscriptions
How to enable and configure RSS feeds
How to configure nightly scripts (filter
media/index-all)

Modifying the Submission Process


Submission Steps

The submission configuration file

The submission configuration file controls the ordering of the


steps used to collect information during item deposit
[dspace]/config/item-submission.xml

Traditional Submission Process


Initial Questions -> Describe -> Upload -> Verify -> License -> Complete

The Structure of item-submission.xml

<item-submission>
<submission-map>
<name-map collection-handle="default" submission-name="traditional" />
</submission-map>
<submission-definitions>
<submission-process name="traditional">
... <!-- Step definitions appear here! -->
</submission-process>
</submission-definitions>
</item-submission>

The submission map

The submission can be configured for individual collections


using the <submission-map>
<submission-map>
<name-map collection-handle="default" submission-name="traditional" />
<name-map collection-handle=123456789/110" submission-name=mysub" />
</submission-map>

The collection-handle is the unique identifier for the collection


The submission-name=mysub relates to the submission
process name

Submission Process

It is possible to modify the traditional submission order to suit


you institution

For example, the licence acceptance first:


Before: Initial Questions -> Describe -> Upload -> Verify -> License -> Complete
After: Licence -> Initial Questions -> Upload -> Describe -> Verify -> Complete

The ordering of the <step> tags within a <submission-process>


definition corresponds to the order in which those steps will
appear

So in the example below, the licence will be displayed before the initial questions
are asked

<submission-definitions>
<submission-process name="traditional">
<!--Step 1 will be to Sign off on the License-->
<step>
<heading>submit.progressbar.license</heading>
<processing-class>org.dspace.submit.step.LicenseStep</processing-class>
<jspui-binding>org.dspace.app.webui.submit.step.JSPLicenseStep</jspui-binding>
<xmlui-binding>org.dspace.app.xmlui.aspect.submission.submit.LicenseStep</xmlui-binding>
<workflow-editable>false</workflow-editable>
</step>
<!--Step 2 will be to Ask Initial Questions-->
<step>
<heading>submit.progressbar.initial-questions</heading>
<processing-class>org.dspace.submit.step.InitialQuestionsStep</processing-class>
<jspui-binding>org.dspace.app.webui.submit.step.JSPInitialQuestionsStep</jspui-binding>
<xmlui-binding>org.dspace.app.xmlui.aspect.submission.submit.InitialQuestionsStep</xmlui-binding>
<workflow-editable>true</workflow-editable>
</step>
</submission-process>

Practical: Submission Order

Open [dspace]/config/item-submission.xml
sudo gedit [dspace]/config/item-submission.xml

Locate the code block below

Move this above step 1 as below

Practical: Submission Order


Restart Tomcat
Submit an item to your newly created collection Metadata
The licence should now appear first

Modifying the Submission Process


Input Forms

A bit on Metadata
Metadata is data that describes other data
DSpace uses metadata to describe internal objects such as
communities, EPeople, collections & items
Metadata for an item is defined in the DSpace registry
Default out-of-the-box schema used by DSpace is Dublin Core
Each field in an items metadata is represented by a DC
element

<dc-type>
<schema>dc</schema>
<element>contributor</element>
<qualifier>author</qualifier>
<scope_note></scope_note>
</dc-type>

Schema in use
Descriptive element
Qualifier

A bit more on Metadata

The metadata registry can be configured via the DSpace GUI

The Submission Process

Out of the box, DSpace, as expected uses a default submission process


This submission process can be customised allowing:
Adding additional metadata to be collected about an item
Individual collections to have unique metadata for their items

Input-forms.xml

The forms used during a submission of an item via the UI are created
based on
[dspace]/config/input-forms.xml

Detailed information can be found in


[dspace]/docs/submission.html

The input-forms.xml consists of the top level element <input-forms> which


contains 3 elements:
<form-map> Mapping which denotes what collections use which form
<form-definitions> What makes up an individual forms
<form-value-pairs> Definition of selection lists included in the form

Form Map

The form-map maps collection handles to forms


Each <form-map></form-map> has 2 attributes:

collection-handle="collectionHandle (default if not selected)


form-name="formName (e.g. <form name="myForm">)

<input-forms>
<form-map>
<name-map collection-handle="default" form-name="traditional" />
</form-map>
</input forms>

Collection 123456789/110 has a form called one defined

Form Definitions

The form-definitions map lays out what types of form are included in the
submission
Each separate form set has a unique name as an attribute. This name is
used to associate a form to a collection in the form-map
A form called traditional has been defined in this form definition
<input-forms>
<-- Form Set Definitions -->
<form-definitions>
<form name="traditional">
...
</form>
</form-definitions>
</input forms>

Form Definitions

A form is created with <form></form>


Each form has the attribute name e.g. <form name="myForm">
This name is used to map a form to a collection.
A form may consist of multiple elements:

<page number=1></page>
<field></field>

<input-forms>
<-- Form Set Definitions -->
<form-definitions>
<form name=traditional>
<page number=1>
<field>.....</field>
<field>.....</field>
</page>

Form Definitions - Fields

A <field> consists of:


<field> Name

Mandatory?

Description

<dc-schema></dc-schema>

True

metadata schema name

<dc-element></dc-element>

True

metadata element

<dc-qualifier></dc-qualifier>

metadata qualifier

<repeatable></repeatable>

Values: true or false Marks a field as repeatable.

<label ></label>

True

Label used in User Interface

<input-type ></input-type>

True

Type of input field that is displayed

<hint></hint>

True

Hint used in User Interface

<required></required>

If completed, the field is marked as mandatory.

<field>
<dc-schema>dc</dc-schema>
<dc-element>contributor</dc-element>
<dc-qualifier>author</dc-qualifier>
<repeatable>true</repeatable>
<label>One: Authors</label>
<input-type>name</input-type>
<hint>Enter the names of the authors of this item below.</hint>
<required></required>
</field>

Form Definitions - Fields


The input-type:

Input-type

Description

onebox

Single boxes for short text

twobox

A pair of single boxes

textarea

A text area

name

A pair of text boxes for personal names

date

At least a year must be given

dropdown

A selection list

qualdrop-value

A selection list combined with a single text box

1.

4.

2.

5.

3.

6.

Form Value Pairs

Form-value-pairs populate dropdown and qualdrop-value lists.


The form-value-pairs element holds child elements named 'value-pairs
A form value pair has two attributes:

value-pairs-name
dc-term

</input-forms>
<-- Name/Value Pairs used within Multiple Choice Widgets -->
<form-value-pairs>
<value-pairs value-pairs-name="common_identifiers" dc-term="identifier">
<pair>
<displayed-value>ISSN</displayed-value>
<stored-value>issn</stored-value>
</pair>
.....
</form-value-pairs>
</input-forms>

Metadata Customisation

Create a new collection called Metadata

Once created, navigate into the collection, click edit on the admin tools
menu and note its handle id i.e. 123456789/422

Open a terminal window


Navigate to [dspace]/config
Open the input-forms.xml using gedit: type gedit input-forms.xml
Locate the lines:

Metadata Customisation

Add an additional line setting:


collection-handle=<Your collection ID>
form-name=one

This forces any submission into this collection to use a different input form
Locate the form definition:

Try adding in you own field types using the dc elements in other field
definitions as a starting point

Metadata Customisation

Restart Tomcat
Submit an item to your newly created collection Metadata
The submission form input should now be modified

Configuring Emails/Notifications &


Subscriptions

Email Notification & Subscription

Most Email Notifications & Subscriptions can be configured


through the dspace.cfg file: [dspace]/config/dspace.cfg
System emails are based on templates found in:
[dspace]/config/emails
# E-mail sent to DSpace users when they register for an account
#
# Parameters: {0} is expanded to a special registration URL
#
# See org.dspace.core.Email for information on the format of this file.
#
Subject: DSpace Account Registration
To complete registration for a DSpace account, please click the link
below:
{0}
If you need assistance with your account, please email
[email protected] or call us at xxx-555-xxxx.
The DSpace Team

Configuring RSS Feeds

RSS Syndication
DSpace supports RSS Syndication
It can be enabled by editing the dspace.cfg file

webui.feed.enable = true
Then restart Tomcat

Other Syndication settings such as:

Number of items per feed


Syndication formats
What metadata is included in the feed

Can also be configured in the dspace.cfg file

Practical: RSS Syndication

Open the dspace.cfg file

[dspace]/config/dspace.cfg

Locate the #### Syndication


Modify webui.feed.enable

Feed Settings ######

webui.feed.enable = true

Restart Tomcat as defined in your local instructions

Have an explore of what syndication features can be


configured

Nightly Scripts

Configuring Nightly Scripts (cron Jobs)

Nightly Scripts

A couple of DSpace features require that a script is


run regularly

Email subscriptions feature (deposit alert)


Filter media tool (generates thumbnails & extracts full-text)
Indexer
Statistics generation

Nightly Scripts

To schedule these scripts to run, execute the command


crontab e as the DSpace user

Then add the following lines:


# Send out subscription e-mails at 01:00 every day
0 1 * * * [dspace]/bin/sub-daily
# Run the media filter at 02:00 every day
0 2 * * * [dspace]/bin/filter-media
# Run the checksum checker at 03:00
0 3 * * * [dspace]/bin/checker -lp
# Mail the results to the sysadmin at 04:00
0 4 * * * [dspace]/bin/dsrun org.dspace.checker.DailyReportEmailer c

PostgreSQL also benefits from regular 'vacuuming

# Clean up the database nightly at 4.20am


20 4 * * * vacuumdb --analyze dspace > /dev/null 2>&1

Nightly Scripts

Generate Statistical reports:

#
0
0
0
0

Run
1 *
1 *
2 *
2 *

stat analyses
* * [dspace]/bin/stat-general
* * [dspace]/bin/stat-monthly
* * [dspace]/bin/stat-report-general
* * [dspace]/bin/stat-report-monthly

The timings of each of these jobs can be modified to suit you


institution
# +---------------- minute (0 - 59)
# | +------------- hour (0 - 23)
# | | +---------- day of month (1 - 31)
# | | | +------- month (1 - 12)
# | | | | +---- day of week (0 - 7) (Sunday=0 or 7)
#| | | | |
* * * * * command to be executed

Credits

These slides have been produced by:

Stuart Lewis & Chris Yates

Repository Support Project

http://www.rsp.ac.uk/

Part of the RepositoryNet

Funded by JISC

http://www.jisc.ac.uk/

You might also like