XML::UM 0.01 review

Download
by rbytes.net on

XML::UM is a Perl module to convert UTF-8 strings to any encoding supported by XML::Encoding. SYNOPSIS use XML::UM; # Set

License: Perl Artistic License
File size: 5K
Developer: Enno Derksen
0 stars award from rbytes.net

XML::UM is a Perl module to convert UTF-8 strings to any encoding supported by XML::Encoding.

SYNOPSIS

use XML::UM;

# Set directory with .xml files that comes with XML::Encoding distribution
# Always include the trailing slash!
$XML::UM::ENCDIR = '/home1/enno/perlModules/XML-Encoding-1.01/maps/';

# Create the encoding routine
my $encode = XML::UM::get_encode (
Encoding => 'ISO-8859-2',
EncodeUnmapped => &XML::UM::encode_unmapped_dec);

# Convert a string from UTF-8 to the specified Encoding
my $encoded_str = $encode->($utf8_str);

# Remove circular references for garbage collection
XML::UM::dispose_encoding ('ISO-8859-2');

This module provides methods to convert UTF-8 strings to any XML encoding that XML::Encoding supports. It creates mapping routines from the .xml files that can be found in the maps/ directory in the XML::Encoding distribution. Note that the XML::Encoding distribution does install the .enc files in your perl directory, but not the.xml files they were created from. That's why you have to specify $ENCDIR as in the SYNOPSIS.

This implementation uses the XML::Encoding class to parse the .xml file and creates a hash that maps UTF-8 characters (each consisting of up to 4 bytes) to their equivalent byte sequence in the specified encoding. Note that large mappings may consume a lot of memory!
Future implementations may parse the .enc files directly, or do the conversions entirely in XS (i.e. C code.)

Requirements:
Perl

XML::UM 0.01 keywords