NAME

MARC-Charset

INTRODUCTION

MARC::Charset is a package to assist you in converting converting data encoded using MARC-8 character sets to Unicode (UTF-8).

The MARC format (MAchine Readable Cataloging) has been used since the early 1970s to encode bibliographic data. Since catalogers have used non-Latin character sets for a long time, MARC had to grapple with the issue of encoding non-ASCII data in an 8-bit environment from very early on; this became known as the "MARC-8 Environment".

In 1992 the Unicode standard provided a a uniform encoding for all major modern written languages. The MARC21 standard now supports encoding character data in Unicode, specifically the UCS Transformation Formats-8 (UTF-8). UTF-8 has the advantage that it allows normal ASCII (8-bit) data to exist side by side with the full repertoire of Unicode characters (16-bit).

Unicode notwithstanding, libraries still have a wealth of data encoded using MARC-8. Yet, some new data formats such as XML require that characters are encoded using Unicode. In order to fascilitate conversion the Library of Congress graciously published character mappings to fascilitate the conversion of MARC-8 data to Unicode.

MARC::Charset is basically an implementation of the character mappings that the Library of Congress has published. For an overview of the MARC-8 environment and to see the MARC8/Unicode translation tables please visit http://www.loc.gov/marc/specifications/speccharintro.html.

INSTALLATION

To install this module type the following:

perl Makefile.PL
make
make test
make install

DEPENDENCIES

  • Perl 5.8.8

  • Test::More

  • XML::SAX

  • Class::Accessor

  • Unicode::Normalize

You may also want to install MARC::Record to process MARC data, but you can use MARC::Charset by itself if you like.

SUPPORT AND CONTRIBUTING

Please report bugs and request features through GitHub issues at https://github.com/perl4lib/marc-perl/issues, saying which distribution they concern. Questions about using the modules are welcome there too. The project website is https://perl4lib.github.io/marc-perl/.

Contributions are very welcome; see CONTRIBUTING.md for how to run the tests and submit a pull request. To report a security problem, please follow SECURITY.md rather than opening a public issue.

COPYRIGHT AND LICENSE

Copyright (C) 2002 Ed Summers

This software is free software and may be distributed under the same terms as Perl itself. See the LICENSE file included with this distribution.