[ 
https://jira.duraspace.org/browse/DS-829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=20366#action_20366
 ] 

Robin Taylor commented on DS-829:
---------------------------------

Just a wee comment about where we do the filtering. This module would do the 
filtering on the result set returned by Harvest.harvest(..). The problem with 
that is that the administrator may have specified that a partial response 
should contain 100 records, if we filter out records after creating the result 
set of 100 records we have to take some corrective action to bring the total 
number back up to 100. The code appears to achieve this by a recursive call to 
Harvest.harvest(..). Would it not be better to filter out unwanted items whilst 
creating the result set ? So the filtering would take place in 
Harvest.harvest(..) ? There is already some filtering done there, depending on 
configuration both withdrawn items and items with restricted visibility can be 
excluded from the result set. The calling code could pass an array of filters 
as part of the call which Harvest could use to exclude items. So in 
Harvest.harvest...

(* Apologies for the pseudo code *)

Read database
Apply filters
If not required then go back and read another item
else add to result set



 

> OAI Extended Addon : Adding filter and modifying capacities to the OAI 
> interface
> --------------------------------------------------------------------------------
>
>                 Key: DS-829
>                 URL: https://jira.duraspace.org/browse/DS-829
>             Project: DSpace
>          Issue Type: New Feature
>          Components: OAI-PMH
>            Reporter: João Melo
>            Assignee: Robin Taylor
>             Fix For: 1.8.0
>
>         Attachments: OAIExtended-v2.2.tar.gz, 
> OAIExtended_v2.1_with_documentation.tar.gz
>
>
> Purpose
> The OAI Extended Addon was initially developed to allow DSpace to be 
> compliant with the Driver project guidelines 
> (http://www.driver-repository.eu).
> How it works?
> When an OAI-PMH request is received, the DSpace database is queried through 
> the standard OAI Interface included in DSpace. After that, the OAI Extended 
> Addon starts to work. First, the list of items retrieved from the database is 
> filtered by a Filter Mechanism, after that, each item associated metadata is 
> modified by a Modifier Mechanism. The results of both actions are returned to 
> the harvester that performed the request.
> Because of the initial purpose, most of the filters and modifiers implemented 
> are specific to the Driver compliance issue. But there is an easy way to 
> develop your own filters and/or modifiers, just by extending the abstract 
> class Filter and/or Modifier. More information is included in the attachment.

-- 
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

       

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its 
next-generation tools to help Windows* and Linux* C/C++ and Fortran 
developers boost performance applications - including clusters. 
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel

Reply via email to