Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XML::Encoding(3)      User Contributed Perl Documentation     XML::Encoding(3)

NAME
       XML::Encoding - A perl module for parsing XML encoding maps.

SYNOPSIS
	   use XML::Encoding;
	   my $em_parser = new XML::Encoding(ErrorContext  => 2,
					     ExpatRequired => 1,
					     PushPrefixFcn => \&push_prefix,
					     PopPrefixFcn  => \&pop_prefix,
					     RangeSetFcn   => \&range_set);

	   my $encmap_name = $em_parser->parsefile($ARGV[0]);

DESCRIPTION
       This module, which is built as a	subclass of XML::Parser, provides a
       parser for encoding map files, which are	XML files. The file
       maps/encmap.dtd in the distribution describes the structure of these
       files. Calling a	parse method returns the name of the encoding map
       (obtained from the name attribute of the	root element). The contents of
       the map are processed through the callback functions push_prefix,
       pop_prefix, and range_set.

   Methods
       This module provides no additional methods to those provided by
       XML::Parser, but	it does	take the following additional options.

       o   ExpatRequired

	   When	this has a true	value, then an error occurs unless the encmap
	   "expat" attribute is	set to "yes". Whether or not the ExpatRequired
	   option is given, the	parser enters expat mode if this attribute is
	   set.	In expat mode, the parser checks if the	encoding violates
	   expat restrictions.

       o   PushPrefixFcn

	   The corresponding value should be a code reference to be called
	   when	a prefix element starts. The single argument to	the callback
	   is an integer which is the byte value of the	prefix.	An undef value
	   should be returned if successful. If	in expat mode, a defined value
	   causes an error and is used as the message string.

       o   PopPrefixFcn

	   The corresponding value should be a code reference to be called
	   when	a prefix element ends. No arguments are	passed to this
	   function. An	undef value should be returned if successful. If in
	   expat mode, a defined value causes an error and is used as the
	   message string.

       o   RangeSetFcn

	   The corresponding value should be a code reference to be called
	   when	a "range" or "ch" element is seen. The 3 arguments passed to
	   this	function are: (byte, unicode_scalar, length) The byte is the
	   starting byte of a range or the byte	being mapped by	a "ch"
	   element. The	unicode_scalar is the Unicode value that this byte
	   (with the current prefix) maps to. The length of the	range is the
	   last	argument.  This	will be	1 for the "ch" element.	An undef value
	   should be returned if successful. If	in expat mode, a defined value
	   causes an error and is used as the message string.

EXPORTS
       None.

KNOWN BUGS
       None.

FEEDBACK
       Patches,	bug reports, suggestions or any	other feedback is welcome.

       Patches can be sent as GitHub pull requests at
       <https://github.com/steve-m-hay/XML-Encoding/pulls>.

       Bug reports and suggestions can be made on the CPAN Request Tracker at
       <https://rt.cpan.org/Public/Bug/Report.html?Queue=XML-Encoding>.

       Currently active	requests on the	CPAN Request Tracker can be viewed at
       <https://rt.cpan.org/Public/Dist/Display.html?Status=Active;Queue=XML-Encoding>.

       Please test this	distribution.  See CPAN	Testers	Reports	at
       <https://www.cpantesters.org/> for details of how to get	involved.

       Previous	test results on	CPAN Testers Reports can be viewed at
       <https://www.cpantesters.org/distro/X/XML-Encoding.html>.

       Please rate this	distribution on	CPAN Ratings at
       <https://cpanratings.perl.org/rate/?distribution=XML-Encoding>.

SEE ALSO
       XML::Parser.

AVAILABILITY
       The latest version of this module is available from CPAN	(see "CPAN" in
       perlmodlib for details) at

       <https://metacpan.org/release/XML-Encoding> or

       <https://www.cpan.org/authors/id/S/SH/SHAY/> or

       <https://www.cpan.org/modules/by-module/XML/>.

       The latest source code is available from	GitHub at
       <https://github.com/steve-m-hay/XML-Encoding>.

INSTALLATION
       See the INSTALL file.

AUTHOR
       Clark Cooper <coopercc@netheaven.com <mailto:coopercc@netheaven.com>>.

       Steve Hay <shay@cpan.org	<mailto:shay@cpan.org>>	is now maintaining
       XML::Encoding as	of version 2.00.

COPYRIGHT
       Copyright (C) 1998 Clark	Cooper.	 All rights reserved.

       Copyright (C) 2007-2010,	2014, 2020 Steve Hay.  All rights reserved.

LICENCE
       This module is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself, i.e. under the terms of either the
       GNU General Public License or the Artistic License, as specified	in the
       LICENCE file.

VERSION
       Version 2.11

DATE
       08 Dec 2020

HISTORY
       See the Changes file.

perl v5.32.1			  2020-12-08		      XML::Encoding(3)

NAME | SYNOPSIS | DESCRIPTION | EXPORTS | KNOWN BUGS | FEEDBACK | SEE ALSO | AVAILABILITY | INSTALLATION | AUTHOR | COPYRIGHT | LICENCE | VERSION | DATE | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=XML::Encoding&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help