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 ([email protected])COPYRIGHT
Copyright 2003-2007, Ian MalpassThis 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).