NAME
MARC::Convert::Wikidata::Object::ISBN - Bibliographic Wikidata object for ISBN number defined by MARC record.
SYNOPSIS
use MARC::Convert::Wikidata::Object::ISBN;
my $obj = MARC::Convert::Wikidata::Object::ISBN->new(%params);
my $collective = $obj->collective.
my $cover = $obj->cover;
my $isbn = $obj->isbn;
my $publisher = $obj->publisher;
my $type = $obj->type;
my $valid = $obj->valid;
METHODS
new
my $obj = MARC::Convert::Wikidata::Object::ISBN->new(%params);
Constructor.
Returns instance of object.
collectiveISBN collective flag.
Parameter means that ISBN is for collection.
Valid value is boolean (0/1).
Default value is 0.
coverISBN cover.
Parameter is optional. Valid values are: hardback, paperback
Default value is undef.
isbnISBN number.
Parameter is required.
Default value is undef.
publisherPublishing house object. Instance of MARC::Convert::Wikidata::Object::Publisher.
Default value is undef.
validFlag if ISBN is valid or not.
Default value is 1 (valid),
collective
my $collective = $obj->collective.
Get collective flag.
Returns bool (0/1).
cover
my $cover = $obj->cover;
Get ISBN cover.
Returns string.
isbn
my $isbn = $obj->isbn;
Get ISBN number.
Returns string.
publisher
my $publisher = $obj->publisher;
Get publishing house name.
Returns instance of MARC::Convert::Wikidata::Object::Publisher.
type
my $type = $obj->type;
Get type of ISBN number (10 or 13 character length)
Returns number (10 or 13).
valid
my $valid = $obj->valid;
Get valid flag.
Returns boolean (0/1).
ERRORS
new():
        Parameter 'collective' must be a bool (0/1).
        Parameter 'isbn' is required.
        ISBN '%s' isn't valid.
        ISBN cover '%s' isn't valid.
        From check_isa():
                Parameter 'publisher' must be a 'MARC::Convert::Wikidata::Object::Publisher' object.
        From check_bool():
                Parameter '%s' must be a bool (0/1).
                        Value: %s       
EXAMPLE1
use strict;
use warnings;
use Data::Printer;
use MARC::Convert::Wikidata::Object::ISBN;
use MARC::Convert::Wikidata::Object::Publisher;
my $obj = MARC::Convert::Wikidata::Object::ISBN->new(
        'isbn' => '978-80-00-05046-1',
        'publisher' => MARC::Convert::Wikidata::Object::Publisher->new(
                'name' => 'Albatros',
        ),
);
p $obj;
# Output:
# MARC::Convert::Wikidata::Object::ISBN  {
#     parents: Mo::Object
#     public methods (8):
#         BUILD, type
#         Error::Pure:
#             err
#         List::Util:
#             none
#         Mo::utils:
#             check_bool, check_isa, check_required
#         Readonly:
#             Readonly
#     private methods (0)
#     internals: {
#         collective   0,
#         _isbn        978-80-00-05046-1 (Business::ISBN13),
#         isbn         "978-80-00-05046-1" (dualvar: 978),
#         publisher    MARC::Convert::Wikidata::Object::Publisher,
#         valid        1
#     }
# }
DEPENDENCIES
Business::ISBN, Error::Pure, Mo, Mo::utils, List::Util, Readonly.
SEE ALSO
- MARC::Convert::Wikidata
 - 
Conversion class between MARC record and Wikidata object.
 
REPOSITORY
https://github.com/michal-josef-spacek/MARC-Convert-Wikidata-Object
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© Michal Josef Špaček 2021-2025
BSD 2-Clause License
VERSION
0.15