NAME
Data::MARC::Field008::Map - Data object for MARC field 008 map material.
SYNOPSIS
use Data::MARC::Field008::Map;
my $obj = Data::MARC::Field008::Map->new(%params);
my $form_of_item = $obj->form_of_item;
my $government_publication = $obj->government_publication;
my $index = $obj->index;
my $projection = $obj->projection;
my $raw = $obj->raw;
my $relief = $obj->relief;
my $special_format_characteristics = $obj->special_format_characteristics;
my $type_of_cartographic_material = $obj->type_of_cartographic_material;
METHODS
new
my $obj = Data::MARC::Field008::Map->new(%params);
Constructor.
form_of_itemForm of item. The length of the string is 1 character. Possible characters are ' ', 'a', 'b', 'c', 'd', 'f', 'o', 'q', 's', 'u', 'z' or '|'.
It's required.
Default value is undef.
government_publicationGovernment publication. The length of the string is 1 character. Possible characters are ' ', 'a', 'c', 'f', 'i', 'l', 'm', 'o', 's', 'u', 'z' or '|'.
It's required.
Default value is undef.
indexIndex. The length of the string is 1 character. Possible characters are '0', '1' or '|'.
It's required.
Default value is undef.
projectionProjection. The length of the string is 2 characters. Possible strings are ' ', 'aa', 'ab', 'ac', 'ad', 'ae', 'af', 'ag', 'am', 'an', 'ap', 'au', 'az', 'ba', 'bb', 'bc', 'bd', 'be', 'be', 'bf', 'bg', 'bh', 'bi', 'bj', 'bk', 'bl', 'bo', 'br', 'bs', 'bu', 'bz', 'ca', 'cb', 'cc', 'ce', 'cp', 'cu', 'cz', 'da', 'db', 'dc', 'dd', 'de', 'df', 'dg', 'dh', 'dl', 'zz' or '||'.
It's required.
Default value is undef.
rawRaw string of material. The length of the string is 17 characters.
It's optional.
Default value is undef.
reliefMap relief. The length of the string is 4 characters. Possible characters are ' ', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'i', 'j', 'k', 'm' or 'z' in each character. Or '||||' in all 4 characters.
It's required.
Default value is undef.
special_format_characteristicsSpecial format characteristics. The length of the string is 2 characters. Possible characters are ' ', 'e', 'j', 'k', 'l', 'n', 'o', 'p', 'r' or 'z'. Or '||' in all 2 characters.
It's required.
Default value is undef.
type_of_cartographic_materialType of cartographic material. The length of the string is 1 character. Possible characters are 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'u', 'z' or '|'.
It's required.
Default value is undef.
Returns instance of object.
form_of_item
my $form_of_item = $obj->form_of_item;
Get form of item.
Returns string.
government_publication
my $government_publication = $obj->government_publication;
Get governent publication.
Returns string.
index
my $index = $obj->index;
Get index.
Returns string.
projection
my $projection = $obj->projection;
Get projection.
Returns string.
raw
my $raw = $obj->raw;
Get raw string of the block.
Returns string.
relief
my $relief = $obj->relief;
Get relief.
Returns string.
special_format_characteristics
my $special_format_characteristics = $obj->special_format_characteristics;
Get special format characteristics.
Returns string.
type_of_cartographic_material
my $type_of_cartographic_material = $obj->type_of_cartographic_material;
Get type of cartographic material.
Returns string.
ERRORS
 new():
         Couldn't create data object of map.
                 Raw string: %s
         Parameter 'raw' has length different than '17'.
                 Value: %s
         From Data::MARC::Field008::Utils::check_government_publication():
                 Parameter 'government_publication' has bad value.
                         Value: %s
                 Parameter 'government_publication' is required.
                 Parameter 'government_publication' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 1
                 Parameter 'government_publication' must be a scalar value.
                         Reference: %s
         From Data::MARC::Field008::Utils::check_index():
                 Parameter 'index' has bad value.
                         Value: %s
                 Parameter 'index' is required.
                 Parameter 'index' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 1
                 Parameter 'index' must be a scalar value.
                         Reference: %s
	 From Data::MARC::Field008::Utils::check_item_form():
                 Parameter 'form_of_item' has bad value.
                         Value: %s
                 Parameter 'form_of_item' is required.
                 Parameter 'form_of_item' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 1
                 Parameter 'form_of_item' must be a scalar value.
                         Reference: %s
         From Data::MARC::Field008::Utils::check_map_cartographic_material_type():
                 Parameter 'type_of_cartographic_material' has bad value.
                         Value: %s
                 Parameter 'type_of_cartographic_material' is required.
                 Parameter 'type_of_cartographic_material' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 1
                 Parameter 'type_of_cartographic_material' must be a scalar value.
                         Reference: %s
         From Data::MARC::Field008::Utils::check_map_projection():
                 Parameter 'projection' has bad value.
                         Value: %s
                 Parameter 'projection' is required.
                 Parameter 'projection' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 2
                 Parameter 'projection' must be a scalar value.
                         Reference: %s
	 From Data::MARC::Field008::Utils::check_map_relief():
                 Parameter 'relief' contains bad relief character.
                         Value: %s
                 Parameter 'relief' has value with pipe character.
                         Value: %s
                 Parameter 'relief' is required.
                 Parameter 'relief' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 4
                 Parameter 'relief' must be a scalar value.
                         Reference: %s
         From Data::MARC::Field008::Utils::check_map_special_format():
                 Parameter 'special_format_characteristics' contains bad special format characteristics character.
                         Value: %s
                 Parameter 'special_format_characteristics' has value with pipe character.
                         Value: %s
                 Parameter 'special_format_characteristics' is required.
                 Parameter 'special_format_characteristics' length is bad.
                         Length: %s
                         Value: %s
                         Expected length: 2
                 Parameter 'special_format_characteristics' must be a scalar value.
                         Reference: %s
EXAMPLE
use strict;
use warnings;
use Data::Printer;
use Data::MARC::Field008::Map;
# cnb000001006
my $obj = Data::MARC::Field008::Map->new(
        'form_of_item' => ' ',
        'government_publication' => ' ',
        'index' => '1',
        'projection' => '  ',
        #         89012345678901234
        'raw' => 'z      e     1   ',
        'relief' => 'z   ',
        'special_format_characteristics' => '  ',
        'type_of_cartographic_material' => 'e',
);
# Print out.
p $obj;
# Output:
# Data::MARC::Field008::Map  {
#     parents: Mo::Object
#     public methods (11):
#         BUILD
#         Data::MARC::Field008::Utils:
#             check_government_publication, check_index, check_item_form, check_map_cartographic_material_type, check_map_projection, check_map_relief, check_map_special_format
#         Error::Pure:
#             err
#         Error::Pure::Utils:
#             err_get
#         Mo::utils:
#             check_length_fix
#     private methods (0)
#     internals: {
#         form_of_item                     " ",
#         government_publication           " ",
#         index                            1,
#         projection                       "  ",
#         raw                              "z      e     1   ",
#         relief                           "z   ",
#         special_format_characteristics   "  ",
#         type_of_cartographic_material    "e"
#     }
# }
DEPENDENCIES
Data::MARC::Field008::Utils, Error::Pure Error::Pure::Utils Mo, Mo::utils.
REPOSITORY
https://github.com/michal-josef-spacek/Data-MARC-Field008
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© 2025 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.03