logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

MARC::Parser::XML - Parser for MARC XML records

Author

       Johann Rolschewski <jorol@cpan.org>

Description

       MARC::Parser::XML is a lightweight, fault tolerant parser for MARC XML records. Tags, indicators and
       subfield codes are not validated against the MARC standard. The resulting data structure is optimized for
       usage with the Catmandu data tool kit.

License

       This  library  is  free  software;  you can redistribute it and/or modify it under the same terms as Perl
       itself.

Marc

       The MARC record is parsed into an ARRAY of ARRAYs:

           $record = [
                   [ 'LDR', undef, undef, '_', '00661nam  22002538a 4500' ],
                   [ '001', undef, undef, '_', 'fol05865967 ' ],
                   ...
                   [   '245', '1', '0', 'a', 'Programming Perl /',
                       'c', 'Larry Wall, Tom Christiansen & Jon Orwant.'
                   ],
                   ...
               ];

Methods

new($file|$fh|$xml)Configuration

       "file"
           Path to file with MARC XML records.

       "fh"
           Open filehandle for MARC XML records.

       "xml"
           XML string.

   next()
       Reads the next record from MARC input.

   _decode($record)
       Deserialize a raw MARC record to an ARRAY of ARRAYs.

Name

       MARC::Parser::XML - Parser for MARC XML records

See Also

perl v5.32.1                                       2021-09-29                             MARC::Parser::XML(3pm)

Synopsis

           use MARC::Parser::XML;

           my $parser = MARC::Parser::XML->new( 't/marc.xml' );

           while ( my $record = $parser->next() ) {
               # do something ...
           }

See Also