NAME
    MARC::Crosswalk::DublinCore - Convert data between MARC and Dublin Core

SYNOPSIS
            my $crosswalk = MARC::Crosswalk::DublinCore->new;
        
            # Convert a MARC record to Dublin Core (simple)
            my $marc = MARC::Record->new_from_usmarc( $blob );
            my $dc   = $crosswalk->as_dublincore( $marc );

            # Convert simple DC to MARC
            $marc = $crosswalk->as_marc( $dc );
        
            # Convert MARC to qualified DC instead
            $crosswalk->qualified( 1 );
            $dc = $crosswalk->as_dublincore( $marc );

DESCRIPTION
    This module provides an implentation of the LOC's spec on how to convert
    metadata between MARC and Dublin Core format. The spec for converting
    MARC to Dublin Core is available at:
    http://www.loc.gov/marc/marc2dc.html, and from DC to MARC:
    http://www.loc.gov/marc/dccross.html.

    NB: The conversion cannot be done in a round-trip manner. i.e. Doing a
    conversion from MARC to DC, then trying to go back to MARC will not
    yield the original record.

INSTALLATION
    To install this module via Module::Build:

            perl Build.PL
            ./Build         # or `perl Build`
            ./Build test    # or `perl Build test`
            ./Build install # or `perl Build install`

    To install this module via ExtUtils::MakeMaker:

            perl Makefile.PL
            make
            make test
            make install

METHODS
  new( %options )
    Creates a new crosswalk object. You can pass the "qualified" option
    (true/false) as well.

            # DC Simple
            $crosswalk = MARC::Crosswalk::DublinCore->new;

            # DC Qualified
            $crosswalk = MARC::Crosswalk::DublinCore->new( qualified => 1 );

  qualified( $qualified )
    Allows you to specify if qualified Dublin Core should be used in the
    input or output. Defaults to false (DC simple).

            # DC Simple
            $crosswalk->qualified( 0 );

            # DC Qualified
            $crosswalk->qualified( 1 );

  as_dublincore( $marc )
    convert a MARC::Record to a DublinCore::Record.

  as_marc( $dublincore )
    convert a DublinCore::Record to a MARC::Record. NB: Not yet implemented.

TODO
    * Implement as_marc()
    * add tests

SEE ALSO
    * http://www.loc.gov/marc/marc2dc.html
    * http://www.loc.gov/marc/dccross.html
    * MARC::Record
    * DublinCore::Record

AUTHOR
    * Brian Cassidy <bricas@cpan.org>

COPYRIGHT AND LICENSE
    Copyright 2005 by Brian Cassidy

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

