EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #07320


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

Re: [EP-tech] OAI : need some explanations about custom sets and filters


Hi Laurent,

If I remember correctly, it's an 'AND' in the vanilla oai2 interface.


From: [EPRINTS_ROOT]/cgi/oai2


my $searchexp = $ds->prepare_search(
                        allow_blank => 1,
                        filters => [
                                @{$filters},
                        ],
                        custom_order => "eprintid",
                        limit => ($PAGESIZE+1) );

EPrints::DataSet::prepare_search calls EPrints::Search::new - the default setting for a search is 'satisfy_all' = 1.


You could copy the cgi script above into:

[EPRINTS_ROOT]/archives/[ARCHIVEID]/cgi/oai2

and define a key on the oai set config to switch satisfy_all between 1 and 0 as necessary.


I have not tried this. It's a possible solution for what you need - but entirely untested!

If it doesn't work, or you have other questions, let me know!


Cheers,

John


PS You may also be interested in http://bazaar.eprints.org/411/ - which  flags anything that has a datestamp, but that is not currently live as 'deleted' in the OAI-PMH interface (which is more compliant with that standard).

The changes may have been merged into the core of EPrints - comparing the cgi/oai2 files should show if this is the case.


From: eprints-tech-bounces@ecs.soton.ac.uk <eprints-tech-bounces@ecs.soton.ac.uk> on behalf of Laurent Cloarec <Laurent.Cloarec@ut-capitole.fr>
Sent: 29 May 2018 14:47:52
To: eprints-tech@ecs.soton.ac.uk
Subject: [EP-tech] OAI : need some explanations about custom sets and filters
 
https://wiki.eprints.org/w/OAI

Hi there

As we do need to define an OAI custom set into our repository, I'd like to know
if the different filters criteria work only with an implicit "AND" operator
(unfortunately not "OR"), and if exists a negative operator (kind of "!=>")...

Regards
--
Laurent Cloarec
Service Commun de la Documentation - Service du Numérique Documentaire
Université Toulouse 1 Capitole



*** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
*** Archive: http://www.eprints.org/tech.php/
*** EPrints community wiki: http://wiki.eprints.org/
*** EPrints developers Forum: http://forum.eprints.org/