Scroll to navigation

Catmandu::Importer::MARC::Lint(3pm) User Contributed Perl Documentation Catmandu::Importer::MARC::Lint(3pm)

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

CONFIGURATION

The MARC field which contains the system id (default: 001)
Read input from a local file given by its path. Alternatively a scalar reference can be passed to read from a string.
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.
Binmode of the input stream "fh". Set to ":utf8" by default.
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.

SEE ALSO

Catmandu::Importer, Catmandu::Iterable

2022-09-27 perl v5.34.0