The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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