marc::crosswalk::dublincore(3pm) [debian man page]
MARC::Crosswalk::DublinCore(3pm) User Contributed Perl Documentation MARC::Crosswalk::DublinCore(3pm)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 con-
verting 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.
perl v5.8.8 2007-11-24 MARC::Crosswalk::DublinCore(3pm)
Check Out this Related Man Page
YAZ-MARCDUMP(1) Commands YAZ-MARCDUMP(1)NAME
yaz-marcdump - MARC record dump utility
SYNOPSIS
yaz-marcdump [-i format] [-o format] [-f from] [-t to] [-l spec] [-c cfile] [-s prefix] [-C size] [-n] [-p] [-v] [-V] [file...]
DESCRIPTION
yaz-marcdump reads MARC records from one or more files. It parses each record and supports output in line-format, ISO2709, MARCXML,
MarcXchange as well as Hex output.
This utility parses records ISO2709(raw MARC) as well as XML if that is structured as MARCXML/MarcXchange.
Note
As of YAZ 2.1.18, OAI-MARC is no longer supported. OAI-MARC is deprecated. Use MARCXML instead.
By default, each record is written to standard output in a line format with newline for each field, $x for each subfield x. The output
format may be changed with option -o,
yaz-marcdump can also be requested to perform character set conversion of each record.
OPTIONS -i format
Specifies input format. Must be one of marcxml, marc (ISO2709), marcxchange (ISO25577), line (line mode MARC), or turbomarc (Turbo
MARC).
-o format
Specifies output format. Must be one of marcxml, marc (ISO2709), marcxchange (ISO25577), line (line mode MARC), or turbomarc (Turbo
MARC).
-f from
Specify the character set from of the input MARC record. Should be used in conjunction with option -t. Refer to the yaz-iconv man page
for supported character sets.
-t to
Specify the character set of of the output. Should be used in conjunction with option -f. Refer to the yaz-iconv man page for supported
character sets.
-l leaderspec
Specify a simple modification string for MARC leader. The leaderspec is a list of pos=value pairs, where pos is an integer offset (0 -
23) for leader. Value is either a quoted string or an integer (character value in decimal). Pairs are comma separated. For example, to
set leader at offset 9 to a, use 9='a'.
-s prefix
Writes a chunk of records to a separate file with prefix given, i.e. splits a record batch into files with only at most "chunk" ISO2709
record per file. By default chunk is 1 (one record per file). See option -C.
-C chunksize
Specifies chunk size; to be used conjunction with option -s.
-p
Makes yaz-marcdump prints record number and input file offset of each record read.
-n
MARC output is omitted so that MARC input is only checkecd.
-v
Writes more information about the parsing process. Useful if you have ill-formatted ISO2709 records as input.
-V
Prints YAZ version.
EXAMPLES
The following command converts MARC21/USMARC in MARC-8 encoding to MARC21/USMARC in UTF-8 encoding. Leader offset 9 is set to 'a'. Both
input and output records are ISO2709 encoded.
yaz-marcdump -f MARC-8 -t UTF-8 -o marc -l 9=97 marc21.raw >marc21.utf8.raw
The same records may be converted to MARCXML instead in UTF-8:
yaz-marcdump -f MARC-8 -t UTF-8 -o marcxml marc21.raw >marcxml.xml
Turbo MARC is a compact XML notation with same semantics as MARCXML, but which allows for faster processing via XSLT. In order to generate
Turbo MARC records encoded in UTF-8 from MARC21 (ISO), one could use:
yaz-marcdump -f MARC8 -t UTF8 -o turbomarc -i marc marc21.raw >out.xml
FILES
prefix/bin/yaz-marcdump
prefix/include/yaz/marcdisp.h
SEE ALSO yaz(7)yaz-iconv(1)
MARCXML[1].
ISO25577[2].
NOTES
1. MARCXML
http://www.loc.gov/standards/marcxml/
2. ISO25577
http://www.loc.gov/standards/iso25577/
YAZ 4.2.30 04/16/2012 YAZ-MARCDUMP(1)