[EP-tech] Re: Creating searches in EPrints?
Tim Brody
tdb2 at ecs.soton.ac.uk
Mon Dec 10 17:07:28 GMT 2012
On Fri, 2012-12-07 at 12:14 +0000, Ian Stuart wrote:
> Is this documented anywhere? I'm not finding anything...
>
> If I have the following defined for an eprint dataObject:
>
> {
> 'name' => 'broker',
> 'type' => 'compound',
> 'multiple' => 1,
> 'fields' => [
> { sub_name => 'orgid', 'type' => 'text' },
> { sub_name => 'orgname', 'type' => 'text' },
> { sub_name => 'repoid', 'type' => 'text' },
> { sub_name => 'reponame', 'type' => 'text' },
> { sub_name => 'sword', 'type' => 'boolean' },
> { sub_name => 'sent', 'type' => 'time', },
> { sub_name => 'return', 'type' => 'url' },
> { sub_name => 'live', 'type' => 'time', },
> { sub_name => 'target', 'type' => 'url' },
> { sub_name => 'note', 'type' => 'text' },
> { sub_name => 'archiver', 'type' => 'boolean' },
> ],
> },
>
> I should be able to create a search thus:
>
> my $dso = $session->get_repository->get_dataset("archive");
> my $searchexp1 = EPrints::Search->new(
> satisfy_all => 1,
> session => $session,
> dataset => $dso,
> );
> $searchexp1->add_field( $dso->get_field("broker_sword"), 'TRUE' );
> $searchexp1->add_field( $dso->get_field("broker_sent"), '2000-' );
> $searchexp1->add_field( $dso->get_field("broker_live"), '' );
> my $results1 = $searchexp1->perform_search;
>
> As I understand it, this should list only those records where one or
> more of the broker elements has the sub_field "sword" set true, and the
> sub_field "sent" defined and after the year 2000, and the sub_field
> "live" is empty
> .... unfortunately, I'm getting records where sub_field "sword" is true,
> but none of the broker elements have a "sent" sub_field
>
> Is there anything out there?
>
To help debug,
print $searchexp1->get_conditions->describe;
To see what you're getting.
On more recent versions you can use '..' as the range selector, in case
it's a problem with understanding '-' with just a year (or maybe
"2000-01-01-" ?).
/Tim.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part
Url : http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20121210/4e9510ef/attachment.bin
More information about the Eprints-tech
mailing list