Provided by: libwebservice-cia-perl_1.4-3_all bug

NAME

       WebService::CIA::Source::DBM - An interface to a DBM copy of the CIA World Factbook

SYNOPSIS

         use WebService::CIA::Source::DBM;
         my $source = WebService::CIA::Source::DBM->new({
                                                          DBM  => 'factbook.dbm',
                                                          Mode => 'read'
                                                        });

DESCRIPTION

       WebService::CIA::Source::DBM is an interface to a pre-compiled DBM copy of the CIA World
       Factbook.

       The module can also be used to make the DBM file, taking data from WebService::CIA::Parser
       (or WebService::CIA::Source::Web) and inserting it into a DBM.

       A script to do this - webservice-cia-makedbm.pl - should be included in this module's
       distribution.

METHODS

       Apart from "new", these methods are normally accessed via a WebService::CIA object.

       "new(\%opts)"
           This method creates a new WebService::CIA::Source::DBM object. It takes a hashref of
           options. Valid keys are "DBM" and "Mode".

           DBM is mandatory and should be the location of the DBM file to be used.

           Mode is optional and can be either "read" or "readwrite". It defaults to "read".

       "value($country_code, $field)"
           Retrieve a value from the DBM.

           $country_code should be the FIPS 10-4 country code as defined in
           <https://www.cia.gov/library/publications/the-world-factbook/appendix/appendix-d.html>.

           $field should be the name of the field whose value you want to retrieve, as defined in
           <https://www.cia.gov/library/publications/the-world-factbook/docs/notesanddefs.html>.
           (WebService::CIA::Parser also creates four extra fields: "URL", "URL - Print", "URL -
           Flag", and "URL - Map" which are the URLs of the country's Factbook page, the
           printable version of that page, a GIF map of the country, and a GIF flag of the
           country respectively.)

       "all($country_code)"
           Returns a hashref of field-value pairs for $country_code or an empty hashref if
           $country_code isn't in the DBM.

       "set($country_code, $data)"
           Insert or update data in the DBM.

           $country_code should be as described above.

           $data is a hashref of the data to store (as Field => Value).

           "set" overwrites any data already in the DBM under $country_code.

       "dbm()"
           Returns a reference to the DBM file in use.

AUTHOR

       Ian Malpass (ian-cpan@indecorous.com)

COPYRIGHT

       Copyright 2003-2007, Ian Malpass

       This library is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

       The CIA World Factbook's copyright information page
       (<https://www.cia.gov/library/publications/the-world-factbook/docs/contributor_copyright.html>)
       states:

         The Factbook is in the public domain. Accordingly, it may be copied
         freely without permission of the Central Intelligence Agency (CIA).

SEE ALSO

       WebService::CIA, WebService::CIA::Parser, WebService::CIA::Source::Web