Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Property:

dspace.dir

Example Value:

/dspace

Informational Note:

Root directory of DSpace installation. Omit the trailing '/'. Note that if you change this, there are several other parameters you will probably want to change to match, e.g. assetstore.dir .

Property:

dspace.hostname

Example Value:

dspace.hostname = dspace.mysu.edu

Informational Note:

Fully qualified hostname; do not include port number.

Property:

dspace.baseUrl

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0d550f8854dd16f3-1064672a-445640bd-a851bb70-374c9a90daa754f35fd9584d"><ac:plain-text-body><![CDATA[

Example Value:

[http://dspacetest.myu.edu:8080]

]]></ac:plain-text-body></ac:structured-macro>

Informational Note:

Main URL at which DSpace Web UI webapp is deployed. Include any port number, but do not include the trailing '/'.

Property:

dspace.url

Example Value:

dspace.url = ${dspace.baseUrl}/jspui

Informational note

DSpace base URL. URL that determines whether JSPUI or XMLUI will be loaded by default. Include port number etc., but NOT trailing slash. Change to /xmlui if you wish to use the xmlui (Manakin) as the default, or remove "/jspui" and set webapp of your choice as the "ROOT" webapp in the servlet engine.

Property:

dspace.oai.url

Example Value:

dspace.oai.url = ${dspace.baseUrl}/oai

Informational note:

The base URL of the OAI webapp (do not include /request).

Property:

dspace.name

Example Value:

dspace.name = DSpace at My University

Informational Note:

Short and sweet site name, used throughout Web UI, e-mails and elsewhere (such as OAI protocol)

...

Property:

assetstore.dir

Example Value:

assetstore.dir = ${dspace.dir}/assetstore

Informational Note:

This is Asset (bitstream) store number 0 (Zero). You need not place your assetstore under the /dspace directory, but may want to place it on a different logical volume on the server that DSpace resides. So, you might have something like this: assetstore.dir = /storevgm/assestore .

Property:

Code Block
assetstore.dir.1
assetstore.dir.2

Example Value:

Code Block
assetstore.dir.1 = /second/assetstore
assetstore.dir.2 = /third/assetstore

Informational Note:

This property specifies extra asset stores like the one above, counting from one (1) upwards. This property is commented out (#) until it is needed.

Property:

assetstore.incoming

Example Value:

assetstore.incoming = 1

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="51622e0dd4e96e97-d3a3f943-480d46f7-8fe899d7-74fe5ae604e04facef861a34"><ac:plain-text-body><![CDATA[

Informational Note:

Informational Note: Specify the number of the store to use for new bitstreams with this property. The default is 0 [zero] which corresponds to the 'assestore.dir' above. As the asset store number is stored in the item metadata (in the database), always keep the assetstore numbering consistent and don't change the asset store number in the item metadata.

]]></ac:plain-text-body></ac:structured-macro>

...

Standard LDAP Configuration

Property:

ldap.enable

Example Value:

ldap.enable = false

Informational Note:

This setting will enable or disable LDAP authentication in DSpace. With the setting off, users will be required to register and login with their email address. With this setting on, users will be able to login and register with their LDAP user ids and passwords.

Property:

ldap.provider_url

Example Value:

ldap.provider_url = ldap://ldap.myu.edu/o=myu.edu

Informational Note:

This is the url to your institution's LDAP server. You may or may not need the /o=myu.edu part at the end. Your server may also require the ldaps:// protocol.

Property:

ldap.id_field

Example Value:

ldap.id_field = uid

Explanation:

This is the unique identifier field in the LDAP directory where the username is stored.

Property:

ldap.object_context

Example Value:

ldap.object_context = ou=people, o=myu.edu

Informational Note:

This is the object context used when authenticating the user. It is appended to the ldap.id_field and username. For example uid=username,ou=people,o=myu.edu. You will need to modify this to match your LDAP configuration.

Property:

ldap.search_context

Example Value:

ldap.search_context = ou=people

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="11b71dbbfb9aa0f8-2c2a76b4-42c043d0-b95c940a-40afbf0dacee2f283749e5d9"><ac:plain-text-body><![CDATA[

Informational Note:

This is the search context used when looking up a user's LDAP object to retrieve their data for autoregistering. With ldap.autoregister turned on, when a user authenticates without an EPerson object we search the LDAP directory to get their name and email address so that we can create one for them. So after we have authenticated against uid=username,ou=people,o=byu.edu we now search in ou=people for filtering on [uid=username]. Often the ldap.search_context is the same as the ldap.object_context parameter. But again this depends on your LDAP server configuration.

]]></ac:plain-text-body></ac:structured-macro>

Property:

ldap.email_field

Example Value:

ldap.email_field = mail

Informational Note:

This is the LDAP object field where the user's email address is stored. "mail" is the default and the most common for LDAP servers. If the mail field is not found the username will be used as the email address when creating the eperson object.

Property:

ldap.surname_field

Example Value:

ldap.surname_field = sn

Informational Note:

This is the LDAP object field where the user's last name is stored. "sn" is the default and is the most common for LDAP servers. If the field is not found the field will be left blank in the new eperson object.

Property:

ldap.givenname_field

Example Value:

ldap.givenname_field = givenName

Informational Note:

This is the LDAP object field where the user's given names are stored. I'm not sure how common the givenName field is in different LDAP instances. If the field is not found the field will be left blank in the new eperson object.

Property:

ldap.phone_field

Example Value:

ldap.phone_field = telephoneNumber

Informational Note:

This is the field where the user's phone number is stored in the LDAP directory. If the field is not found the field will be left blank in the new eperson object.

Property:

webui.ldap.autoregister

Example Value:

webui.ldap.autoregister = true

Informational Note:

This will turn LDAP autoregistration on or off. With this on, a new EPerson object will be created for any user who successfully authenticates against the LDAP server when they first login. With this setting off, the user must first register to get an EPerson object by entering their ldap username and password and filling out the forms.

LDAP Users Group

Property:

ldap.login.specialgroup

Example Value:

ldap.login.specialgroup = group-name

Informational Note:

If required, a group name can be given here, and all users who log into LDAP will automatically become members of this group. This is useful if you want a group made up of all internal authenticated users. (Remember to log on as the administrator, add this to the "Groups" with read rights).

...

Properties:

crosswalk.mods.properties.MODS
crosswalk.mods.properties.mods

Example Values:

crosswalk.mods.properties.MODS = crosswalks/mods.properties
crosswalk.mods.properties.mods = crosswalks/mods.properties

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="3eeb78c210beaaaa-6194a3ab-4a4d4d3e-9f4fa5bd-fd2a4730ce71c7b4c4dc50f8"><ac:plain-text-body><![CDATA[

Informational Note:

This defines a crosswalk named MODS whose configuration comes from the file [dspace]/config/crosswalks/mods.properties . (In the above example, the lower-case name was added for OAI-PMH)

]]></ac:plain-text-body></ac:structured-macro>

...

Property:

webui.licence_bundle.show

Example Value:

webui.licence_bundle.show = false

Informational Note:

Sets whether to display the contents of the license bundle (often just the deposit license in the standard DSpace installation).

Property:

webui.browse.thubnail.show

Example Value:

webui.browse.thubnail.show = true

Informational Note:

Controls whether to display thumbnails on browse and search result pages. If you have customized the Browse columnlist, then you must also include a "thumbnail" column in your configuration. _(This configuration property key is not used by XMLUI. To show thumbnails using XMLUI, you need to create a theme which displays them)._

Property:

webui.browse.thumbnail.maxheight

Example Value:

webui.browse.thumbnail.maxheight = 80

Informational Note:

This property determines the maximum height of the browse/search thumbnails in pixels (px). This only needs to be set if the thumbnails are required to be smaller than the dimensions of thumbnails generated by MediaFilter.

Property:

webui.browse.thumbnail.maxwidth

Example Value:

webui.browse.thumbnail.maxwidth = 80

Informational Note:

This determines the maximum width of the browse/search thumbnails in pixels (px). This only needs to be set if the thumbnails are required to be smaller than the dimensions of thumbnails generated by MediaFilter.

Property:

webui.item.thumbnail.show

Example Value:

webui.item.thumbnail.show = true

Informational Note:

This determines whether or not to display the thumbnail against each bitstream. (This configuration property key is not used by XMLUI. To show thumbnails using XMLUI, you need to create a theme which displays them).

Property:

webui.browse.thumbnail.linkbehavior

Example Value:

webui.browse.thumbnail.linkbehavior = item

Informational Note:

This determines where clicks on the thumbnail in browse and search screens should lead. The only values currently supported are "item" or "bitstream", which will either take the user to the item page, or directly download the bitstream.

Property:

thumbnail.maxwidth

Example Value:

thumbnail.maxwidth = 80

Informational Note:

This property sets the maximum width of generated thumbnails that are being displayed on item pages.

Property:

thumbnail.maxheight

Example Value:

thumbnail.maxheight = 80

Informational Note:

This property sets the maximum height of generated thumbnails that are being displayed on item pages.

Property:

webui.preview.enabled

Example Value:

webui.preview.enabled = false

Informational Note:

Whether or not the user can "preview" the image.

Property:

webui.preview.maxwidth

Example Value:

webui.preview.maxwidth = 600

Informational Note:

This property sets the maximum width for the preview image.

Property:

webui.preview.maxheight

Example Value:

webui.preview.maxheight = 600

Informational Note:

This property sets the maximum height for the preview image.

Property:

webui.preview.brand

Example Value:

webui.preview.brand = My Institution Name

Informational Note:

This is the brand text that will appear with the image.

Property:

webui.preview.brand.abbrev

Example Value:

webui.preview.brand.abbrev = MyOrg

Informational Note:

An abbreviated form of the full Branded Name. This will be used when the preview image cannot fit the normal text.

Property:

webui.preview.brand.height

Example Value:

webui.preview.brand.height = 20

Informational Note:

The height (in px) of the brand.

Property:

webui.preview.brand.font

Example Value:

webui.preview.brand.font = SansSerif

Informational Note:

This property sets the font for your Brand text that appears with the image.

Property:

webui.preview.brand.fontpoint

Example Value:

webui.preview.brand.fontpoint = 12

Informational Note:

This property sets the font point (size) for your Brand text that appears with the image.

Property:

webui.preview.dc

Example Value:

webui.preview.dc = rights

Informational Note:

The Dublin Core field that will display along with the preview. This field is optional.

Property:

webui.strengths.show

Example Value:

webui.strengths.show = false

Informational Note:

Determines if communities and collections should display item counts when listed. The default behavior if omitted, is true. (This configuration property key is not used by XMLUI. To show thumbnails using XMLUI, you need to create a theme which displays them).

Property:

webui.strengths.cache

Example Value:

webui.strengths.cache = false

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="43b93713fe92bf50-7691cd47-4b184c64-8f98be42-e9c3f85a95c78fcefa671342"><ac:plain-text-body><![CDATA[

Informational Note:

When showing the strengths, should they be counted in real time, or fetched from the cache. Counts fetched in real time will perform an actual count of the database contents every time a page with this feature is requested, which will not scale. If you set the property key is set to cache ("true") you must run the following command periodically to update the count: /[dspace]/bin/dspace itemcounter. The default is to count in real time (set to "false").

]]></ac:plain-text-body></ac:structured-macro>

...

Property:

webui.itemdisplay.default

Example Value:

Code Block
webui.itemdisplay.default = dc.title, dc.title.alternative, \
           dc.contributor.*, dc.subject, dc.data.issued(date), \
           dc.publisher, dc.identifier.citation, \
           dc.relation.ispartofseries, dc.description.abstract, \
           dc.description, dc.identifier.govdoc, \
           dc.identifier.uri(link), dc.identifier.isbn, \
           dc.identifier.issn, dc.identifier.ismn, dc.identifier

Informational Note:

This is used to customize the DC metadata fields that display in the item display (the brief display) when pulling up a record. The format is: <schema>.<element>.<_optional_qualifier> . In place of the qualifier, one can use the wildcard "*" to include all fields of the same element, or, leave it blank for unqualified elements. Additionally, two additional options are available for behavior/rendering: (date) and (link). See the following examples:

dc.title = Dublin Core element 'title' (unqualified)
dc.title.alternative = DC element 'title', qualifier 'alternative'
dc.title.* = All fields with Dublin Core element 'title' (any or no qualifier)
dc.identifier.uri(link) = DC identifier.uri, rendered as a link
dc.date.issued(date) = DC date.issued, rendered as a date
The Messages.properties file controls how the fields defined above will display to the user. If the field is missing from the _Messages.properties_ file, it will not be displayed. Look in Messages.properties}}under {{metadata.dc.<field>. Example:
metadata.dc.contributor.other = Authors
metadata.dc.contributor.author = Authors
metadata.dc.title.* = Title
Please note: The order in which you place the values to the property key control the order in which they will display to the user on the outside world. (See the Example Value above).

Property:

Code Block
webui.resolver.1.urn
webui.resolver.1.baseurl
webui.resolver.2.urn
webui.resolver.2.baseurl

Example Value:

Code Block
webui.resolver.1.urn = doi
webui.resolver.1.baseurl = http://dx.doi.org/
webui.resolver.2.urn = hdl
webui.resolver.2.baseurl = http://hdl.handle.net/

Informational Note:

When using "resolver" in webui.itemdisplay to render identifiers as resolvable links, the base URL is take from <code>webui.resolver.<n>.baseurl<code> where <code>webui.resolver.<n>.baseurl<code> matches the urn specified in the metadata value. The value is appended to the "baseurl" as is, so the baseurl needs to end with the forward slash almost in any case. If no urn is specified in the value it will be displayed as simple text. For the doi and hdl urn defaults values are provided, respectively http://dc.doi.org and http://hdl.handle.net are used. If a metadata value with style "doi", "handle" or "resolver" matches a URL already, it is simply rendered as a link with no other manipulation.

Property:

plugin.single.org.dspace.app.webui.util.StyleSelection

Example Value:

Code Block
plugin.single.org.dspace.app.webui.util.StyleSelection = \
  org.dspace.app.web.util.CollectionStyleSelection
  #org.dspace.app.web.util.MetadataStyleSelection

Informational Note:

Specify which strategy to use for select the style for an item.

Property:

webui.itemdisplay.thesis.collections

Example Value:

webui.itemdisplay.thesis.collections = 123456789/24, 123456789/35

Informational Note:

Specify which collections use which views by Handle.

Property:

Code Block
webui.itemdisplay.metadata-style
webui.itemdisplay.metadata-style

Example Value:

Code Block
webui.itemdisplay.metadata-style = schema.element[.qualifier|.*]
webui.itemdisplay.metadata-style = dc.type

Informational Note:

Specify which metadata to use as name of the style

Property:

webui.itemlist.columns

Example Value:

Code Block
webui.itemlist.columns = thumbnail, dc.date.issued(date), dc.title, \
          dc.contributor.*

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="804d271133e3060e-38bfe578-4d18428a-ba65ac67-802f53c45d6caf7830f958a8"><ac:plain-text-body><![CDATA[

Informational Note:

Customize the DC fields to use in the item listing page. Elements will be displayed left to right in the order they are specified here. The form is <schema prefix>.<element>[.<qualifier> | .*][(date)], ...
]]></ac:plain-text-body></ac:structured-macro>
Although not a requirement, it would make sense to include among the listed fields at least the date and title fields as specified by the* webui.browse.index. configuration options in the next section mentioned. (cf.)
If you have enabled thumbnails (webui.browse.thumbnail.show), you must also include a 'thumbnail' entry in your columns‚ this is where the thumbnail will be displayed.

Property:

webui.itemlist.width

Example Value:

webui.itemlist.width = *, 130, 60%, 40%

Informational Note:

You can customize the width of each column with the following line--you can have numbers (pixels) or percentages. For the 'thumbnail' column, a setting of '*' will use the max width specified for browse thumbnails (cf. webui.browse.thumbnail.maxwidth, thumbnail.maxwidth)

Property:

Code Block
webui.itemlist.browse.<index name>.sort.<sort name>.columns
webui.itemlist.sort.<sort name>.columns
webui.itemlist.browse.<browse name>.columns
webui.itemlist.<sort or index name>.columns

Example Value:

_}}

Informational Note:

You can override the DC fields used on the listing page for a given browse index and/or sort option. As a sort option or index may be defined on a field that isn't normally included in the list, this allows you to display the fields that have been indexed/sorted on. There are a number of forms the configuration can take, and the order in which they are listed below is the priority in which they will be used (so a combination of an index name and sort name will take precedence over just the browse name).In the last case, a sort option name will always take precedence over a browse index name. Note also, that for any additional columns you list, you will need to ensure there is an itemlist.<field name> entry in the messages file.

Property:

webui.itemlist.dateaccessioned.columns

Example Value:

webui.itemlist.dateaccessioned.columns = thumbnail, dc.date.accessioned(date), dc.title, dc.contributor.*

Informational Note:

This would display the date of the accession in place of the issue date whenever the dateaccessioned browsed index or sort option is selected. Just like webui.itemlist.columns, you will need to include a 'thumbnail' entry to display the thumbnails in the item list.

Property:

webui.itemlist.dateaccessioned.widths

Example Value:

webui.itemlist.dateaccessioned.widths = *, 130, 60%, 40%

Informational Note:

As in the aforementioned property key, you can customize the width of the columns for each configured column list, substituting '.widths' for '.columns' in the property name. See the setting for webui.itemlist.widths for more information.

Property:

webui.itemlist.tablewidth

Example Value:

webui.itemlist.tablewidth = 100%

Informational Note:

You can also set the overall size of the item list table with the following setting. It can lead to faster table rendering when used with the column widths above, but not generally recommended.

Property:

webui.session.invalidate

Example Value:

webui.session.invalidate = true

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="c128d4c70b47e6c8-8520e86f-4dae41ac-be8d9ad5-d045a30e6c589dd2e48b6718"><ac:plain-text-body><![CDATA[

Informational Note:

Enable or disable session invalidation upon login or logout. This feature is enabled by default to help prevent session hijacking but may cause problems for shibboleth, etc. If omitted, the default value is 'true'. [Only used for JSPUI authentication].

]]></ac:plain-text-body></ac:structured-macro>

...

Property:

xmlui.supported.locales

Example Value:

xmlui.supported.locales = en, de

Informational Note:

A list of supported locales for Manakin. Manakin will look at a user's browser configuration for the first language that appears in this list to make available to in the interface. This parameter is a comma separated list of Locales. All types of Locales country, country_language, country_language_variant. Note that if the appropriate files are not present (i.e. Messages_XX_XX.xml) then Manakin will fall back through to a more general language.

Property:

xmlui.force.ssl

Example Value:

xmlui.force.ssl = true

Informational Note:

Force all authenticated connections to use SSL, only non-authenticated connections are allowed over plain http. If set to true, then you need to ensure that the 'dspace.hostname' parameter is set to the correctly.

Property:

xmlui.user.registration

Example Value:

xmlui.user.registration = true

Informational Note:

Determine if new users should be allowed to register. This parameter is useful in conjunction with Shibboleth where you want to disallow registration because Shibboleth will automatically register the user. Default value is true.

Property:

xmlui.user.editmetadata

Example Value:

xmlui.user.editmetadata = true

Informational Note:

Determines if users should be able to edit their own metadata. This parameter is useful in conjunction with Shibboleth where you want to disable the user's ability to edit their metadata because it came from Shibboleth. Default value is true.

Property:

xmlui.user.assumelogon

Example Value:

xmlui.user.assumelogon = true

Informational Note:

Determine if super administrators (those whom are in the Administrators group) can login as another user from the "edit eperson" page. This is useful for debugging problems in a running dspace instance, especially in the workflow process. The default value is false, i.e., no one may assume the login of another user.

Property:

xmlui.user.loginredirect

Example Value:

xmlui.user.loginredirect = /profile

Informational Note:

After a user has logged into the system, which url should they be directed? Leave this parameter blank or undefined to direct users to the homepage, or /profile for the user's profile, or another reasonable choice is /submissions to see if the user has any tasks awaiting their attention. The default is the repository home page.

Property:

xmlui.theme.allowoverrides

Example Value:

xmlui.theme.allowoverrides = false

Informational Note:

Allow the user to override which theme is used to display a particular page. When submitting a request add the HTTP parameter "themepath" which corresponds to a particular theme, that specified theme will be used instead of the any other configured theme. Note that this is a potential security hole allowing execution of unintended code on the server, this option is only for development and debugging it should be turned off for any production repository. The default value unless otherwise specified is "false".

Property:

xmlui.bundle.upload

Example Value:

xmlui.bundle.upload = ORIGINAL, METADATA, THUMBNAIL, LICENSE, CC_LICENSE

Informational Note:

Determine which bundles administrators and collection administrators may upload into an existing item through the administrative interface. If the user does not have the appropriate privileges (add and write) on the bundle then that bundle will not be shown to the user as an option.

Property:

xmlui.community-list.render.full

Example Value:

xmlui.community-list.render.full = true

Informational Note:

On the community-list page should all the metadata about a community/collection be available to the theme. This parameter defaults to true, but if you are experiencing performance problems on the community-list page you should experiment with turning this option off.

Property:

xmlui.community-list.cache

Example Value:

xmlui.community-list.cache = 12 hours

Informational Note:

Normally, Manakin will fully verify any cache pages before using a cache copy. This means that when the community-list page is viewed the database is queried for each community/collection to see if their metadata has been modified. This can be expensive for repositories with a large community tree. To help solve this problem you can set the cache to be assumed valued for a specific set of time. The downside of this is that new or editing communities/collections may not show up the website for a period of time.

Property:

xmlui.bistream.mods

Example Value:

xmlui.bistream.mods = true

Informational Note:

Optionally, you may configure Manakin to take advantage of metadata stored as a bitstream. The MODS metadata file must be inside the "METADATA" bundle and named MODS.xml. If this option is set to 'true' and the bitstream is present then it is made available to the theme for display.

Property:

xmlui.bitstream.mets

Example Value:

xmlui.bitstream.mets = true

Informational Note:

Optionally, you may configure Manakin to take advantage of metadata stored as a bitstream. The METS metadata file must be inside the "METADATA" bundle and named METS.xml. If this option is set to "true" and the bitstream is present then it is made available to the theme for display.

Property:

xmlui.google.analytics.key

Example Value:

xmlui.google.analytics.key = UA-XXXXXX-X

Informational Note:

If you would like to use Google Analytics to track general website statistics then use the following parameter to provide your analytics key. First sign up for an account at http://analytics.google.com, then create an entry for your repositories website. Google Analytics will give you a snippet of javascript code to place on your site, inside that snip it is your Google Analytics key usually found in the line: _uacct = "UA-XXXXXXX-X" Take this key (just the UA-XXXXXX-X part) and place it here in this parameter.

Property:

xmlui.controlpanel.activity.max

Example Value:

xmlui.controlpanel.activity.max = 250

Informational Note:

Assign how many page views will be recorded and displayed in the control panel's activity viewer. The activity tab allows an administrator to debug problems in a running DSpace by understanding who and how their dspace is currently being used. The default value is 250.

Property:

xmlui.controlpanel.activity.ipheader

Example Value:

xmlui.controlpanel.activity.ipheader = X-Forward-For

Informational Note:

Determine where the control panel's activity viewer receives an events IP address from. If your DSpace is in a load balanced environment or otherwise behind a context-switch then you will need to set the parameter to the HTTP parameter that records the original IP address.

OAI-PMH Configuration and Activation

In the following sections, you will learn how to configure OAI-PMH and activate additional OAI-PMH crosswalks. The user is also referred to 9.2OAI-PMH Data Provider for greater depth details of the program.

OAI-PMH Configuration

Property:

oai.didl.maxresponse

Example Value:

oai.didle.maxresponse = 0

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="ebb4d068-d881-470f-997f-661bffe8a929"><ac:plain-text-body><![CDATA[

Informational Note:

Max response size for DIDL. This is the maximum size in bytes of the files you wish to enclose Base64 encoded in your responses, remember that the base64 encoding process uses a lot of memory. We recommend at most 200000 for answers of 30 records each on a 1 Gigabyte machine. Ultimately this will change to a streaming model and remove this restriction. Also please remember to allocate plenty of memory, at least 512 MB to your Tomcat. Optional: DSpace uses 100 records as the limit for the oai responses. You can alter this by changing /[dspace-source]/dspace-oai/dspace-oai-api/src/main/java/org/dspace/app/oai/DSpaceOAICatalog.java to codify the declaration: private final int MAX_RECORDS = 100 to private final int MAX_RECORDS = 30

]]></ac:plain-text-body></ac:structured-macro>

Activating Additional OAI-PMH Crosswalks

DSpace comes with an unqualified DC Crosswalk used in the default OAI-PMH data provider. There are also other Crosswalks bundled with the DSpace distribution which can be activated by editing one or more configuration files. How to do this for each available Crosswalk is described below. The DSpace source includes the following crosswalk plugins available for use with OAI-PMH:

  • mets - The manifest document from a DSpace METS SIP.
  • mods - MODS metadata, produced by the table-driven MODS dissemination crosswalk.
  • qdc - Qualified Dublin Core, produced by the configurable QDC crosswalk. Note that this QDC does not include all of the DSpace "dublin core" metadata fields, since the XML standard for QDC is defined for a different set of elements and qualifiers.
    OAI-PMH crosswalks based on Crosswalk Plugins are activated as follows:
  1. Wiki Markup
    Uncomment the appropriate {{\[dspace\]/config/oaicat.properties}} of the form: {{Crosswalks.plugin_name=org.dspace.app.oai.PluginCrosswalk}} (where {{plugin_name}} is the actual plugin's name, e.g. "mets" or "qdc").  These lines are all near the bottom of the file.
    • You can also add a brand new custom crosswalk plugin. Just make sure that the crosswalk plugin has a lower-case name (possibly in addition to its upper-case name) in the plugin configuration in dspace.cfg. Then add a line similar to above to the oaicat.properties file.
  2. Restart your servlet container, e.g. Tomcat, for the change to take effect.
  3. Verify the Crosswalk is activated by accessing a URL such as http://mydspace/oai/request?verb=ListRecords&metadataPrefix=mets
DIDL

By activating the DIDL provider, DSpace items are represented as MPEG-21 DIDL objects. These DIDL objects are XML documents that wrap both the Dublin Core metadata that describes the DSpace item and its actual bitstreams. A bitstream is provided inline in the DIDL object in a base64 encoded manner, and/or by means of a pointer to the bitstream. The data provider exposes DIDL objects via the metadataPrefix didl.

The crosswalk does not deal with special characters and purposely skips dissemination of the license.txt file awaiting a better understanding on how to map DSpace rights information to MPEG21-DIDL.

The DIDL Crosswalk can be activated as follows:

  1. Uncomment the oai.didl.maxresponse configuration in dspace.cfg
  2. Wiki Markup
    Uncomment the DIDL Crosswalk entry from the {{\[dspace\]/config/oaicat.properties}} file
  3. Restart your servlet container, e.g. Tomcat, for the change to take effect.
  4. Verify the Crosswalk is activated by accessing a URL such as http://mydspace/oai/request?verb=ListRecords&metadataPrefix=didl

OAI-ORE Harvester Configuration

This section describes the parameters used in configuring the OAI-ORE harvester.

OAI-ORE Configuration

There are many possible configuration options for the OAI harvester. Most of them are technical and therefore omitted from the dspace.cfg file itself, using hard-coded defaults instead. However, should you wish to modify those values, including them in dspace.cfg will override the system defaults.

Property:

harvester.eperson

Example Value:

harvester.eperson = admin@myu.edu

Informational Note:

The EPerson under whose authorization automatic harvesting will be performed. This field does not have a default value and must be specified in order to use the harvest scheduling system. This will most likely be the DSpace admin account created during installation.

Property:

dspace.oai.url

Example Value:

dspace.oai.url = http://myu.edu:8080/oai_

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="8b77e075-bf51-4541-a492-4b8cd522060b"><ac:plain-text-body><![CDATA[

Informational Note:

The base url of the OAI-PMH disseminator webapp (i.e. do not include the /request on the end). This is necessary in order to mint URIs for ORE Resource Maps. The default value of [http://$]{dspace.hostname}:8080/oai will work for a typical installation, but should be changed if appropriate.

]]></ac:plain-text-body></ac:structured-macro>

Property:

ore.authoritative.source

Example Value:

ore.authoritative.source = oai | xmlui

Informational Note:

The webapp responsible for minting the URIs for ORE Resource Maps. If using oai, the dspace.oai.uri config value must be set. The URIs generated for ORE ReMs follow the following convention for both cases._baseURI/metadata/handle/theHandle/ore.xml}}

Property:

harvester.autoStart

Example Value:

harvester.autoStart = false

Informational Note:

Determines whether the harvest scheduler process starts up automatically when the XMLUI webapp is redeployed.

Property:

harvester.oai.metadataformats.PluginName

Example Value:

Code Block
harvester.oai.metadataformats.PluginName = \
http://www.openarchives.org/OAI/2.0/oai_dc/, Simple Dublin Core

Informational Note:

This field can be repeated and serves as a link between the metadata formats supported by the local repository and those supported by the remote OAI-PMH provider. It follows the form harvester.oai.metadataformats.PluginName = NamespaceURI,Optional Display Name . The pluginName designates the metadata schemas that the harvester "knows" the local DSpace repository can support. Consequently, the PluginName must correspond to a previously declared ingestion crosswalk. The namespace value is used during negotiation with the remote OAI-PMH provider, matching it against a list returned by the ListMetadataFormats request, and resolving it to whatever metadataPrefix the remote provider has assigned to that namespace. Finally, the optional display name is the string that will be displayed to the user when setting up a collection for harvesting. If omitted, the PluginName:NamespaceURI combo will be displayed instead.

Property:

harvester.oai.oreSerializationFormat.OREPrefix

Example Value:

Code Block
harvester.oai.oreSerializationFormat.OREPrefix = \
http://www.w3.org/2005/Atom

Informational Note:

This field works in much the same way as harvester.oai.metadataformats.PluginName . The OREPrefix must correspond to a declared ingestion crosswalk, while the Namespace must be supported by the target OAI-PMH provider when harvesting content.

Property:

harvester.timePadding

Example Value:

harvester.timePadding = 120

Informational Note:

Amount of time subtracted from the from argument of the PMH request to account for the time taken to negotiate a connection. Measured in seconds. Default value is 120.

Property:

harvester.harvestFrequency

Example Value:

harvester.harvestFrequency = 720

Informational Note:

How frequently the harvest scheduler checks the remote provider for updates. Should always be longer than _timePadding _. Measured in minutes. Default value is 720.

Property:

harvester.minHeartbeat

Example Value:

harvester.minHeartbeat = 30

Informational Note:

The heartbeat is the frequency at which the harvest scheduler queries the local database to determine if any collections are due for a harvest cycle (based on the harvestFrequency) value. The scheduler is optimized to then sleep until the next collection is actually ready to be harvested. The minHeartbeat and maxHeartbeat are the lower and upper bounds on this timeframe. Measured in seconds. Default value is 30.

Property:

harvester.maxHeartbeat

Example Value:

harvester.maxHeartbeat = 3600

Informational Note:

The heartbeat is the frequency at which the harvest scheduler queries the local database to determine if any collections are due for a harvest cycle (based on the harvestFrequency) value. The scheduler is optimized to then sleep until the next collection is actually ready to be harvested. The minHeartbeat and maxHeartbeat are the lower and upper bounds on this timeframe. Measured in seconds. Default value is 3600 (1 hour).

Property:

harvester.maxThreads

Example Value:

harvester.maxThreads = 3

Informational Note:

How many harvest process threads the scheduler can spool up at once. Default value is 3.

Property:

harvester.threadTimeout

Example Value:

harvester.threadTimeout = 24

Informational Note:

How much time passes before a harvest thread is terminated. The termination process waits for the current item to complete ingest and saves progress made up to that point. Measured in hours. Default value is 24.

Property:

harvester.unknownField

Example Value:

harvester.unkownField = fail | add | ignore

Informational Note:

You have three (3) choices. When a harvest process completes for a single item and it has been passed through ingestion crosswalks for ORE and its chosen descriptive metadata format, it might end up with DIM values that have not been defined in the local repository. This setting determines what should be done in the case where those DIM values belong to an already declared schema. Fail will terminate the harvesting task and generate an error. Ignore will quietly omit the unknown fields. Add will add the missing field to the local repository's metadata registry. Default value: fail.

Property:

harvester.unknownSchema

Example Value:

harvester.unknownSchema = fail | add | ignore

Informational Note:

When a harvest process completes for a single item and it has been passed through ingestion crosswalks for ORE and its chosen descriptive metadata format, it might end up with DIM values that have not been defined in the local repository. This setting determines what should be done in the case where those DIM values belong to an unknown schema. Fail will terminate the harvesting task and generate an error. Ignore will quietly omit the unknown fields. Add will add the missing schema to the local repository's metadata registry, using the schema name as the prefix and "unknown" as the namespace. Default value: fail.

Property:

harvester.acceptedHandleServer

Example Value:

Code Block
harvester.acceptedHandleServer = \
hdl.handle.net, handle.test.edu

Informational Note:

A harvest process will attempt to scan the metadata of the incoming items (identifier.uri field, to be exact) to see if it looks like a handle. If so, it matches the pattern against the values of this parameter. If there is a match the new item is assigned the handle from the metadata value instead of minting a new one. Default value: hdl.handle.net.

Property:

harvester.rejectedHandlePrefix

Example Value:

harvester.rejectedHandlePrefix = 123456789, myeduHandle

Informational Note:

Pattern to reject as an invalid handle prefix (known test string, for example) when attempting to find the handle of harvested items. If there is a match with this config parameter, a new handle will be minted instead. Default value: 123456789.

DSpace SOLR Statistics Configuration

DSpace SOLR Statistics Configuration

Property:

solr.log.server

Example Value:

solr.log.server = ${dspace.baseUrl}/solr/statistics

Informational Note:

Is used by the SolrLogger Client class to connect to the SOLR server over http and perform updates and queries.

Property:

solr.spidersfile

Example Value:

solr.spidersfile = ${dspace.dir}/config/spiders.txt

Informational Note:

Spiders file is utilized by the SolrLogger

Property:

solr.log.server

Example Value:

solr.log.server = ${dspace.baseUrl}/solr/statistics

Informational Note:

Is used by the SolrLogger Client class to connect to the SOLR server over http and perform updates and queries.

Property:

solr.spidersfile

Example Value:

solr.spidersfile = ${dspace.dir}/config/spiders.txt

Informational Note:

Spiders file is utilized by the SolrLogger, this will be populated by running the following command:dsrun org.dspace.statistics.util.SpiderDetector -i <httpd log file>

Property:

solr.dbfile

Example Value:

solr.dbfile = ${dspace.dir}/config/GeoLiteCity.dat

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="76d6f02239fe1af6-d68fc78b-44d34744-815ca045-491cb688ed6f0552572c4857"><ac:plain-text-body><![CDATA[

Informational Note:

The following refers to the GeoLiteCity database file utilized by the LocationUtils to calculate the location of client requests based on IP address. During the Ant build process (both fresh_install and update) this file will be downloaded from [http://www.maxmind.com/app/geolitecity] if a new version has been published or it is absent from your [dspace]/config directory.

]]></ac:plain-text-body></ac:structured-macro>

Property:

solr.resolver.timeout

Example Value:

solr.resolver.timeout = 200

Informational Note:

Timeout for the resolver in the DNS lookup time in milliseconds, defaults to 200 for backward compatibility; your system's default is usually set in /etc/resolv.conf and varies between 2 to 5 seconds, too high a value might result in solr exhausting your connection pool.

Property:

statistics.item.authorization.admin

Example Value:

statistics.item.authorization.admin = true

Informational Note:

Enables access control restriction on DSpace Statistics pages, Restrictions are based on access rights to Community, Collection and Item Pages. This will require the user to sign on to see that statistics. Setting the statistics to "false" will make them publicly available.

Property:

solr.statistics.logBots

Example Value:

{{solr.statistics.logBots = true }}

Informational Note:

Enable/disable logging of spiders in solr statistics. If false, and IP matches an address in solr.spiderips.urls, event is not logged. If true, event will be logged with the 'isBot' field set to true (see solr.statistics.query.filter.* for query filter options) Default value is true.

Property:

solr.statistics.query.filter.spiderIp

Example Value:

solr.statistics.query.filter.spiderIp = false

Informational Note:

Controls solr statistics querying to filter out spider IPs. False by default.

Property:

{{solr.statistics.query.filter.isBot }}

Example Value:

solr.statistics.query.filter.isBot = true

Informational Note:

Controls solr statistics querying to look at "isBot" field to determine if record is a bot. True by default.

Property:

solr.spiderips.urls

Example Value:

Code Block
solr.spiderips.urls = http://iplists.com/google.txt, \
                      http://iplists.com/inktomi.txt, \
                      http://iplists.com/lycos.txt, \
                      http://iplists.com/infoseek.txt, \
                      http://iplists.com/altavista.txt,\
                      http://iplists.com/excite.txt, \
                      http://iplists.com/misc.txt, \
                      http://iplists.com/excite.txt, \
                      http://iplists.com/misc.txt, \
                      http://iplists.com/non_engines.txt

Informational Note:

URLs to download IP addresses of search engine spiders from

...