[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[EP-tech] full_test_status field



or...


cgi/oai2 could be updated so that it could handle filters for searches on the document dataset


https://github.com/eprints/eprints/blob/3.3/cgi/oai2#L778 menas that cgi/oai2 applies the filters in the config to eprints only


More flexible config options could mean that you can send it filters for documents eg


{ meta_fields => [ "security" ], value => "public", },


>From the result set once could build down theunique list of $doc->value("eprintid") and this would be the result set you were looking for for the Driver set.


I'm not sure this has any particular advantages to John's method. Maybe having a method to define custom sets of eprints based on document metadata would be useful for other OAI-PMH use cases?


Maybe it would be slower as it is searching a bigger dataset?


Cheers,


Rory


Rory McNicholl
Lead developer
Digital Archives & Research Technologies
University of London Computer Centre
Senate House
Malet Street
London
WC1E 7HU

t: +44 (0)20 7863 1344
e: rory.mcnicholl at london.ac.uk
w: http://www.ulcc.ac.uk/

The University of London is an exempt charity in England and Wales.
________________________________
From: eprints-tech-bounces at ecs.soton.ac.uk <eprints-tech-bounces at ecs.soton.ac.uk> on behalf of John Salter <J.Salter at leeds.ac.uk>
Sent: 06 July 2017 14:55:36
To: 'eprints-tech at ecs.soton.ac.uk'
Subject: [EP-tech] full_test_status field

Hi all,
Something for discussion:

By default, EPrints sets the eprint->full_text_status field to:
'none' - if there are no docs
'public' - if there are some docs, and all are 'public'
'restricted' - if there are some docs, and at least one is not public.

Code: https://github.com/eprints/eprints/blob/392474eec1/lib/defaultcfg/cfg.d/eprint_fields_automatic.pl#L30-L44

The full_text_status value is used as a filter in the OAI-PMH Driver set:
https://github.com/eprints/eprints/blob/392474eec1/lib/defaultcfg/cfg.d/oai.pl#L59-L63<https://github.com/eprints/eprints/blob/392474eec1b8125a66ed2d3e12b02aeb67dc07c4/lib/defaultcfg/cfg.d/oai.pl#L59-L63>
which means for items that have multiple documents, of which one is restricted, the item will not be included in the Driver set.

Should there be another option for the full_text_status defined - e.g. 'some_public' - to show that at least one document is public?

Currently, from the full_text_status value of 'restricted', it's not possible to determine whether this means *all* documents are restricted, or whether just one is.

I realise this can be addressed on a repository-by-repository basis by updating the conifg, but I think that making it work better in core EPrints would be best.

Any thoughts?
Cheers,
John



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20170706/0b95e4fa/attachment-0001.html