marc-mir

 view release on metacpan or  search on metacpan

META.yml  view on Meta::CPAN

  ExtUtils::MakeMaker: 6.30
dynamic_config: 0
generated_by: 'Dist::Zilla version 4.300029, CPAN::Meta::Converter version 2.120921'
license: perl
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: 1.4
name: marc-mir
requires:
  Exporter: 0
  Modern::Perl: 0
  Perlude: 0
  autodie: 0
  parent: 0
version: 0.4

Makefile.PL  view on Meta::CPAN

  },
  "CONFIGURE_REQUIRES" => {
    "ExtUtils::MakeMaker" => "6.30"
  },
  "DISTNAME" => "marc-mir",
  "EXE_FILES" => [],
  "LICENSE" => "perl",
  "NAME" => "marc::mir",
  "PREREQ_PM" => {
    "Exporter" => 0,
    "Modern::Perl" => 0,
    "Perlude" => 0,
    "autodie" => 0,
    "parent" => 0
  },
  "VERSION" => "0.4",
  "test" => {
    "TESTS" => "t/*.t"
  }
);

lib/MARC/MIR.pm  view on Meta::CPAN

package MARC::MIR;
use parent 'Exporter';
use autodie;
use Modern::Perl;
use Perlude;
# use Perlude::Sh qw< :all >;

# ABSTRACT: DSL to manipulate MIR records.
our $VERSION = '0.4';

# our %EXPORT_TAGS =
# ( dsl => [qw<
# 	with_fields
# 	with_subfields

lib/MARC/MIR.pod  view on Meta::CPAN

=head1 MIR: MARC Intermediate Representation

MARC::MIR is not a library, it's a specification for in-memory representation
of a MARC record with simplcity in mind. The current module comes with a set of
helpers to manipulate it (i call it MARC::MIR DSL).

The DSL itself is designed to  be used the more natural way possible. Here are
some basic exemples (combined with Perlude).

    use Modern::Perl;
    use MARC::MIR;
    use Perlude;

    # marcdump

    now {say for_humans from_iso2709} iso2709_records_of 'source.mrc'

    # report the IDs of the 10 first records of the file

    now {

lib/MARC/MIR/Tutorial.pod  view on Meta::CPAN


to make things more readable and less error prone, we also add a DSL. Every keywords of this DSL works the same way. FIXME : explain. 

also, iso2709_records_of is an helper that stream the records of an ISO2709 formatted file.

=head2 some examples 

the perfect boilerplate

    use autodie;
    use Modern::Perl;
    use Perlude;
    use MARC::MIR;

print all the ids of the records (assuming the id is in 001, the common case)

    now    { say record_id from_iso2709 } iso2709_records_of "biblio.marc";

or

    marawk { say $ID } "biblio.marc";

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 2.104 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-f73e49a70403 )