[ 
https://jira.duraspace.org/browse/DS-708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tim Donohue updated DS-708:
---------------------------

    Attachment: sample-mods-properties.patch

Ugh. Ok, this whole 'dc.description.provenance' hiding (DS-192) is now a much 
bigger problem with the removal of the METSExport class. 

The METSExport class was able to get around the larger issues because it 
created its own METS & MODS *by itself* (without using any of the DSpace 
Packagers or Crosswalks).

Now, if we remove the METSExport class and replace it with usage of Packagers & 
Crosswalks, we encounter inherent problems in how Crosswalks function and how 
DSpace deals with metadata permissions.  

Essentially, the problem is twofold:
(1) Unlike Packagers, DSpace Crosswalks currently do not accept any form of 
"parameters" being passed to them.  This means that the MODSCrosswalk will 
*always* crosswalk DIM -> MODS in the same way, no matter what interface is 
calling it (OAI-PMH, commandline, etc).  So, if the MODSCrosswalk is configured 
to translate 'dc.description.provenance' fields to MODS, then it will *always* 
do so (and you cannot hide it just from a single interface, like OAI-PMH)
(2) As we know, DSpace itself doesn't support permissions/rights on metadata 
fields (see DS-819, DS-800, etc). So, there's no easy way to limit who can see 
a particular metadata field, or tell DSpace to just hide "internal" fields 
(like dc.description.provenance) when performing certain types of 
dissemination/crosswalking. 

So, as far as I can see, there's no 'perfect' solution for filtering provenance 
info once we remove the obsolete METSExport class:

[Option A:] Comment out the 'dc.description.provenance' DIM->MODS mapping in 
the [dspace]/config/crosswalks/mods.properties config file.  This means, by 
default, Provenance metadata will never be mapped to MODS (and never be made 
available to OAI-PMH or any other DSpace interface via MODS).  This is actually 
similar to how 'dc.description.provenance' does not appear in 
[dspace]/config/crosswalks/oaidc.properties file. We would also likely want to 
add a note as to why that mapping is commented out.  This way people can choose 
to enable it in mods.properties, if they wanted it included in their MODS 
mapping (and thus also in OAI-PMH).

[Option B:] Perform some post-processing in the OAI-PMH "METSCrosswalk" to 
remove all <modes:note type='provenance'> fields.  This could only be performed 
if 'oai.mets.hide-provenance' is set to true.  However, as this would be 
performed for *every* disseminated METS file, this may cause a performance hit.

[Option C:] Leave the METSExport class in place until a better solution 
presents itself.  This is a bit ugly, as this class generates an obsolete, 
undocumented METS format (which is not identical to the METS generated by the 
DSpaceMETSDisseminator). 

Currently, I'd lean towards Option A.  I've attached a proposed patch (see 
'sample-mods-properties.patch' above)  But, I do want to hear the opinion of 
others on this issue, before I move forward.

> Deprecate & Remove old 'org.dspace.app.mets.METSExport' class, as it is 
> obsolete
> --------------------------------------------------------------------------------
>
>                 Key: DS-708
>                 URL: https://jira.duraspace.org/browse/DS-708
>             Project: DSpace
>          Issue Type: Code Task
>          Components: DSpace API, OAI-PMH
>    Affects Versions: 1.7.0
>            Reporter: Tim Donohue
>            Assignee: Tim Donohue
>             Fix For: 1.8.0
>
>         Attachments: DS-708-dspace-api.patch, DS-708-dspace-oai-api.patch, 
> sample-mods-properties.patch
>
>
> With the improvements that have happened to the METS Ingest and Dissemination 
> packager classes in DSpace 1.7.0 (see DS-466), we should deprecate & remove 
> the old 'org.dspace.app.mets.METSExport' class, as it is now considered 
> obsolete.
> This older METSExport class is currently used in the following places:
> * OAI-PMH interface (by the org.dspace.app.oai.METSCrosswalk class)
> My proposal is to deprecate this class in DSpace 1.7.0, and then work to 
> remove & replace its usage within the OAI-PMH interface in the next major 
> version of DSpace (1.8.0).
> The replacement for METSExport is the following classes:
> * org.dspace.content.packager.DSpaceMETSDisseminator
> * org.dspace.content.packager.DSpaceMETSIngester

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://jira.duraspace.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel

Reply via email to