NAME¶
Catmandu::Importer::SRU - Package that imports SRU data
SYNOPSIS¶
use Catmandu::Importer::SRU;
my %attrs = (
base => 'http://www.unicat.be/sru',
query => '(isbn=0855275103 or isbn=3110035170 or isbn=9010017362 or isbn=9014026188)',
recordSchema => 'marcxml',
parser => 'marcxml'
);
my $importer = Catmandu::Importer::SRU->new(%attrs);
my $count = $importer->each(sub {
my $schema = $record->{recordSchema};
my $packing = $record->{recordPacking};
my $position = $record->{recordPosition};
my $data = $record->{recordData};
# ...
});
# Using Catmandu::Importer::SRU::Package::marcxml, included in this release
my $importer = Catmandu::Importer::SRU->new(
base => 'http://www.unicat.be/sru',
query => '(isbn=0855275103 or isbn=3110035170 or isbn=9010017362 or isbn=9014026188)',
recordSchema => 'marcxml' ,
parser => 'marcxml' ,
);
# Using a homemade parser
my $importer = Catmandu::Importer::SRU->new(
base => 'http://www.unicat.be/sru',
query => '(isbn=0855275103 or isbn=3110035170 or isbn=9010017362 or isbn=9014026188)',
recordSchema => 'marcxml' ,
parser => MyParser->new , # or parser => '+MyParser'
);
CONFIGURATION¶
- base
- base URL of the SRU server (required)
- query
- CQL query (required)
- recordSchema
- set to "dc" by default
- sortkeys
- optional sorting
- operation
- set to "searchRetrieve" by default
- version
- set to 1.1 by default.
- userAgent
- HTTP user agent, set to "Mozilla/5.0" by default.
- furl
- Instance of Furl or compatible class to fetch URLs with.
- parser
- Controls how records are parsed before importing. The following options
are possible:
- •
- Instance of a Perl package that implements a "parse" subroutine.
See the default value "Catmandu::Importer::SRU::Parser" for an
example.
- •
- Name of a Perl package that implements a "parse" subroutine. The
name must be prepended by "+" or it prefixed with
"Catmandu::Importer::SRU::Parser::". For instance
"marcxml" will create a
"Catmandu::Importer::SRU::Parser::marcxml".
- •
- Function reference that gets passed the unparsed record.
METHODS¶
All methods of Catmandu::Importer and by this Catmandu::Iterable are inherited.
In addition the following methods are provided:
url¶
Return the current SRU request URL (useful for debugging).
SEE ALSO¶
Catmandu::Importer, Catmandu::Iterable,
<
http://www.loc.gov/standards/sru/>