NAME

Catmandu::Importer::MARC::Lint - Package that imports USMARC records validated with MARC::Lint

SYNOPSIS

# From the command line
$ catmandu convert MARC --type Lint --fix "marc_map('245a','title')" < /foo/data.mrc

# From perl
use Catmandu;

# import records from file
my $importer = Catmandu->importer('MARC',file => '/foo/data.mrc', type => 'Lint');
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};
});

DESCRIPTION

All items produced with the Catmandu::Importer::MARC::Lint importer contain three keys:

'_id'    : the system identifier of the record (usually the 001 field) 
'record' : an ARRAY of ARRAYs containing the record data
'lint'   : the output of MARC::Lint's check_record on the MARC record

METHODS

new(file => $file , fh => $fh , id => $field)

Parse a file or a filehandle into a Catmandu::Iterable. Optionally provide an id attribute specifying the source of the system identifer '_id' field (e.g. '001').

INHERTED METHODS

count

each(&callback)

...

Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited.

SEE ALSO

MARC::File::USMARC, MARC::File::Lint,