Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Panel

Contents

Table of Contents
outlinetrue
stylenone

Support for Multiple Schemas

A simple enhancement proposal to add support for multiple (flat) schemas.
Current assignee: Martin Hald. Basic implemenation complete, alpha version available as http://sourceforge.net/tracker/index.php?func=detail&aid=1242663&group_id=19984&atid=319984Image Removed a patch on SourceForge.

...

method. Of course additional functionality will be needed in the UI (administration UI etc.) to realise the schema support but everything should work as before when the relevant changes are made elsewhere. Care will be needed to do everything in a way that doesn't impact performance. (Don't want to add to ScalabilityIssues ScalabilityIssues1.4!)

Code Block

org.dspace.administer

New class

Code Block
MetadataSchema

...

and other DSpace Java objects. _Maybe belongs in

...

org.dspace.content

?_

Code Block
DCType

becomes

...

needs updating (see below).
Maybe create a backwards-compatible class

Code Block
DCType

?

Code Block

org.dspace.content

  • Code Block
    org.dspace.content.Item
    will need a few changes.
    Code Block
    getDC()/setDC()
    etc. need to work exactly as before. Not difficult. It will also need some extra get/set methods for the
    Code Block
    MetadataField
    (and maybe
    Code Block
    MetadataSchema
    ?).
  • New class
    Code Block
    MetadataValue
    : identical to
    Code Block
    DCValue
    , except with a
    Code Block
    MetadataSchema
    value. Can make
    Code Block
    DCValue
    a subclass of
    Code Block
    MetadataValue
    for backwards-compatibility.

Code Block

org.dspace.search

Will work with DC with no changes as it uses APIs and not direct D access. Will need to be modified to use new metadata schema values.

...

Code Block
 search.index.1 = author:dc.contributor.*
 search.index.2 = author:dc.creator.*
 search.index.3 = title:dc.title.*
 search.index.4 = medium:vracore.material.medium

Code Block

org.dspace.browse

Code and table views will need alteration.

Other changes

  • Format of
    Code Block
    [dspace]config/registries/dublin-core-types.xml
    will need to be altered. (Perhaps even can use XSLT for backwards-compatilibity (wink) )
  • Custom submission form stuff could be extended to take advantage of this new stuff
  • Batch importer/exporter – should be easy to retain backwards compatilibity (with "
    Code Block
    dublin_core.xml
    " clearly indicating Dublin Core, can use different filename for other metadata)
  • History system??
  • UI changes to item display page