[EP-tech] Re: oai filters

Florian Heß hess at ub.uni-heidelberg.de
Thu Oct 25 09:47:07 BST 2012


Am 23.10.2012 17:20, schrieb Sebastien Francois:
> On 23/10/12 15:08, Yuri wrote:
>> Il 23/10/2012 15:55, Sebastien Francois ha scritto:
>>> Hi Yuri,
>>>
>>> pong!
>>>
>>> I'm not sure you can use filters to filter items *out* (or perhaps this
>>> was added in 3.3, I don't recall).
>>>
>>> So you might just need to set opposite values to your items: you want to
>>> exclude items which has X in field Y ? Then set !X to all other items
>>> and filter on !X (I recall doing that exact thing on a French
>>> repository). You can then even have custom sets in OAI (perhaps that's
>>> your aim).
>>>
>>> Hope this will help you,
>>> Seb.
>>>
>>>
>> do you have more details?
>
> Say you want to filter *out* stuff where field "oai_set" = "hide"
> (that's your Y = X).
>
> You'll have a set of items that will have oai_set = "hide". Then also
> flag the other items with (eg.) oai_set = "show" and filter on that
> value in OAI.
>
> Then in oai.pl:
>
> $oai->{filters} = [
>       { meta_fields => [ 'oai_set' ], value => 'show', match => 'EX' } ]
> ];
>
> You see what I mean?
>
> I suggest this approach because I don't think there is a "match"
> operator in EPrints that can do "not equal to" (the opposite of match =>
> 'EX' on the above line).
>

Thats why I'd favor an additional negative set of the operators ("!op" 
or "not_op") in an upcoming version of EPrints, cf my posting from Oct 
12. It is not always practical to simply invert the query. When I have 
enough time and nothing else to do, I'll see if I can make a patch to 
publish here on the list. It's open source after all ...

Regards :-),
Florian

> Seb.
>
> *** 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/
>


-- 
UB Heidelberg (Altstadt)
Plöck 107-109, 69117 HD
- Informationstechnik
- WWW-Redaktion
Tel. 06221 / 54 3550
http://www.ub.uni-heidelberg.de/



More information about the Eprints-tech mailing list