Provided by: libbusiness-isbn-data-perl_20210112.006-1_all bug

NAME

       Business::ISBN::Data - data pack for Business::ISBN

SYNOPSIS

       see Business::ISBN

DESCRIPTION

       You don't need to load this module yourself in most cases. Business::ISBN will load it
       when it loads. You must use Business::ISBN 3.005 or later because the data structure
       changed slightly to fix a bug with ISBN13 prefixes.

       These data are generated from the RangeMessage.xml file provided by the ISBN Agency. The
       distributed version matches the date in the version for this module. You can retrieve this
       yourself at <https://www.isbn-international.org/range_file_generation>.  This file is
       included as part of the distribution and should be installed at
       ~lib/Business/ISBN/Data/RangeMessage.xml.

       If you want to use a different RangeMessage.xml file, you can set the "ISBN_RANGE_MESSAGE"
       environment variable to the alternate location before you load "Business::ISBN". This way,
       you can use the latest (or even earlier) data without having to install something new or
       wait for an update to this module.

       If the default RangeMessage.xml or your alternate one is not available, the module falls
       back to data included in Data.pm. However, that data are likely to be older. If it does
       not find that file, it looks for RangeMessage.xml in the current directory.

       The data are in %Business::ISBN::country_data (although the "country" part is historical).
       If you want to see where the data are from, check $Business::ISBN::country_data{_source}.

   Packaging this module
       The included RangeMessage.xml is in under lib/ at the same level as Data.pm. The same data
       exist as the default data in the code, so you don't need to pass along the distributed
       RangeMessage.xml.  However, you can include a newer RangeMessage.xml.

       With PAR, you can add extra files to the archive with "-a". Put the new file somewhere the
       module will find it (or use "ISBN_RANGE_MESSAGE" to lead it there):

               pp ... -a '..../RangeMessage.xml;RangeMessage.xml'

       If you put the RangeMessage.xml in the current working directory of the application, the
       module should find it.

   Updating the default data
       In the repo, find the examples/make_default_data.pl program. Run that against the latest
       RangeMessage.xml:

               % perl -Ilib examples/make_default_data.pl RangeMessage.xml

       That produces the code you need to replace in the module. Check that that data aren't
       weird: sometimes the group names have errors or oddities. The program handles escaping
       single quotes and trimming white space.

SOURCE AVAILABILITY

       This module lives in a Github repository:

               https://github.com/briandfoy/business-isbn-data.git

       You are probably also interested in the module that uses it:

               https://github.com/briandfoy/business-isbn.git

       If you have something to add, create a fork on Github and send a pull request.

AUTHOR

       brian d foy, "<bdfoy@cpan.org>"

       Yakov Shafranovich updated the data in October 2008.

       Daniel Jakubik updated the data in July 2012.

       Markus Spann suggested looking for RangeMessage.xml in the current directory to make it
       work with Perl app bundlers.

       Josef Moravec "<josef.moravec@gmail.com>" updated the data in January 2019.

       Peter Williams fixed a serious issue with ISBN-13 (GitHub #5). You must use Business::ISBN
       3.005 or later because the data structure changed.

COPYRIGHT AND LICENSE

       Copyright © 2002-2021, brian d foy <bdfoy@cpan.org>. All rights reserved.

       You may redistribute this under the terms of the Artistic License 2.0.