[ 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