| SRU documentation | Contained in the SRU distribution. |
SRU::Request::SearchRetrieve - A class for representing SRU searchRetrieve requests
## creating a new request
my $request = SRU::Request::SearchRetrieve->new(
version => '1.1',
query => 'kirk and spock' );
The constructor which you can pass the following parameters: version, query, startRecord, maximumRecords, recordPacking, recordSchema, recordXPath, resultSetTTL, sortKeys, stylesheet, extraRequestData. The version and query parameters are mandatory.
Fetch the root node of the CQL parse tree for the query.
| SRU documentation | Contained in the SRU distribution. |
package SRU::Request::SearchRetrieve; use strict; use warnings; use base qw( Class::Accessor SRU::Request ); use SRU::Utils qw( error ); use CQL::Parser;
sub new { my ($class,%args) = @_; return SRU::Request::SearchRetrieve->SUPER::new( \%args ); }
my @validParams = qw( version query startRecord maximumRecords recordPacking recordSchema recordXPath resultSetTTL sortKeys stylesheet extraRequestData );
sub validParams { return @validParams }; SRU::Request::SearchRetrieve->mk_accessors( @validParams );
sub cql { my $self = shift; my $query = $self->query(); return '' unless $query; my $node; my $parser = CQL::Parser->new(); eval { $node = $parser->parse( $query ) }; return $node; } 1;