NAME

Catmandu::Importer::Z3950 - Package that imports Z3950 data

SYNOPSIS

# On the command line

$ catmandu convert Z3950 --host z3950.loc.gov --port 7090 --databaseName Voyager --query "(title = dinosaur)"

# From Perl

use Catmandu;

my $importer = Catmandu->importer('Z3950'
        host => 'z3950.loc.gov',
        port => 7090,
        databaseName => "Voyager",
        preferredRecordSyntax => "USMARC",
        queryType => 'PQF', # CQL or PQF
        query => '@attr 1=4 dinosaur'
);

my $n = $importer->each(sub {
  my $hashref = $_[0];
  ...
});

CONFIGURAION

host

The Z3950 host name

port

The Z3950 port

user

A user name

password

A password

databaseName

The database to connect to

preferredRecordSyntax

The preferred response format (default: USMARC)

queryType

The queryType (CQL or PQF)

query

The query

handler

The Perl handler to parse the response content. Examples are 'USMARC' and 'UNIMARC'

$ catmandu convert Z3950 \
         --user 'XXX' \
         --password 'XXX' \
         --host z3950.bnf.fr \
         --port 2211 \
         --databaseName TOUT-ANA1-UTF8 \
         --preferredRecordSyntax Unimarc \
         --queryType PQF \
         --query '@attr 1=7 9782744024191' \
         --handler UNIMARC

REQUIREMENTS

This package uses the ZOOM package internally. For more info visit: http://search.cpan.org/~mirk/Net-Z3950-ZOOM-1.28/lib/ZOOM.pod

The ZOOM package has a hard dependency on YAZ toolkit. For more info about YAZ, visit: https://www.indexdata.com/yaz

Installing YAZ: - (osx, using homebrew): brew install yaz - (linux, using yum): yum install yaz libyaz

AUTHOR

  • Wouter Willaert, <wouterw@inuits.eu>

  • Patrick Hochstenbach, <patrick.hochstenbach@ugent.be>

CONTRIBUTORS

  • Emmanuel Di Pretoro, edipretoro at gmail.com

SEE ALSO

Catmandu::Iterable