---
name: "Catmandu::Importer::MARC::Record"
section: "3pm"
platform: "linux"
package: "libcatmandu-marc-perl"
version: "1.320-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Catmandu::Importer::MARC::Record"
---

# Catmandu::Importer::MARC::Record(3pm)

Package that imports an array of MARC::Record

## NAME

Catmandu::Importer::MARC::Record - Package that imports an array of MARC::Record

## SYNOPSIS

```
    # From perl
    use Catmandu;
    use MARC::Record;
    my $record = MARC::Record->new();
    my $field = MARC::Field->new('245','','','a' => 'My title.');
    $record->append_fields($field);
    # import records from file
    my $importer = Catmandu->importer('MARC',file => '/foo/data.mrc' , records => [$record]);
    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};
    });
```

## METHODS

### new(records =\> \[ \<Marc::Record\> , ... \] , id =\> $field)

Parse an array of MARC::Record 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::Record
