NAME
Catmandu::Importer::MARC::XML - Package that imports MARCXML records
SYNOPSIS
# From the command line
$ catmandu convert MARC --type XML --fix "marc_map('245a','title')" < /foo/data.xml
# From perl
use Catmandu;
# import records from file
my $importer = Catmandu->importer('MARC',file => '/foo/data.xml', type => 'XML');
my $fixer = Catmandu->fixer("marc_map('245a','title')");
$importer->each(sub {
my $item = shift;
...
});
# or using the fixer
$fixer->fix($importer)->each(sub {
my $item = shift;
printf "title: %s\n" , $item->{title};
});
CONFIGURATION
- id
-
The MARC field which contains the system id (default: 001)
- file
-
Read input from a local file given by its path. Alternatively a scalar reference can be passed to read from a string.
- fh
-
Read input from an IO::Handle. If not specified, Catmandu::Util::io is used to create the input stream from the
file
argument or by using STDIN. - encoding
-
Binmode of the input stream
fh
. Set to:utf8
by default. - fix
-
An ARRAY of one or more fixes or file scripts to be applied to imported items.
METHODS
Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited.