The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Data::MARC::Leader - Data object for MARC leader.

SYNOPSIS

 use Data::MARC::Leader;

 my $obj = Data::MARC::Leader->new(%params);
 my $bibliographic_level = $obj->bibliographic_level;
 my $char_coding_scheme = $obj->char_coding_scheme;
 my $data_base_addr = $obj->data_base_addr;
 my $descriptive_cataloging_form = $obj->descriptive_cataloging_form;
 my $encoding_level = $obj->encoding_level;
 my $impl_def_portion_len = $obj->impl_def_portion_len;
 my $indicator_count = $obj->indicator_count;
 my $length = $obj->length;
 my $length_of_field_portion_len = $obj->length_of_field_portion_len;
 my $multipart_resource_record_level = $obj->multipart_resource_record_level;
 my $raw = $obj->raw;
 my $starting_char_pos_portion_len = $obj->starting_char_pos_portion_len;
 my $status = $obj->status;
 my $subfield_code_count = $obj->subfield_code_count;
 my $type = $obj->type;
 my $type_of_control = $obj->type_of_control;
 my $undefined = $obj->undefined;

METHODS

new

 my $obj = Data::MARC::Leader->new(%params);

Constructor.

  • bibliographic_level

    Bibliographic level flag.

    Default values is undef.

  • char_coding_scheme

    Character coding scheme.

    Default values is undef.

  • data_base_addr

    Base address of data.

    Default values is undef.

  • descriptive_cataloging_form

    Descriptive cataloging form.

    Default values is undef.

  • encoding_level

    Encoding level.

    Default values is undef.

  • impl_def_portion_len

    Length of the implementation-defined portion.

    Default values is undef.

  • indicator_count

    Indicator count.

    Default values is undef.

  • length

    Record length.

    Default values is undef.

  • length_of_field_portion_len

    Length of the length-of-field portion.

    Default values is undef.

  • multipart_resource_record_level

    Multipart resource record level.

    Default values is undef.

  • raw

    Raw leader value.

    Default values is undef.

  • starting_char_pos_portion_len

    Length of the starting-character-position portion.

    Default values is undef.

  • status

    Record status.

    Default values is undef.

  • subfield_code_count

    Subfield code count.

    Default values is undef.

  • type

    Type of record.

    Default values is undef.

  • type_of_control

    Type of control.

    Default values is undef.

  • undefined

    Undefined.

    Default values is undef.

Returns instance of object.

bibliographic_level

 my $bibliographic_level = $obj->bibliographic_level;

Get bibliographic level flag.

Returns character.

char_coding_scheme

 my $char_coding_scheme = $obj->char_coding_scheme;

Get character coding scheme.

Returns character.

data_base_addr

 my $data_base_addr = $obj->data_base_addr;

Get base address of data.

Returns number.

descriptive_cataloging_form

 my $descriptive_cataloging_form = $obj->descriptive_cataloging_form;

Get descriptive cataloging form.

Returns character.

encoding_level

 my $encoding_level = $obj->encoding_level;

Get encoding level.

Returns character.

impl_def_portion_len

 my $impl_def_portion_len = $obj->impl_def_portion_len;

Get length of the implementation-defined portion.

Returns character.

indicator_count

 my $indicator_count = $obj->indicator_count;

Get indicator count.

Returns character.

length

 my $length = $obj->length;

Get record length.

Returns number.

length_of_field_portion_len

 my $length_of_field_portion_len = $obj->length_of_field_portion_len;

Get length of the length-of-field portion

Returns character.

multipart_resource_record_level

 my $multipart_resource_record_level = $obj->multipart_resource_record_level;

Get multipart resource record level.

Returns character.

raw

 my $raw = $obj->raw;

Get raw leader value.

Returns string.

starting_char_pos_portion_len

 my $starting_char_pos_portion_len = $obj->starting_char_pos_portion_len;

Get length of the starting-character-position portion.

Returns character.

status

 my $status = $obj->status;

Get record status.

Returns character.

subfield_code_count

 my $subfield_code_count = $obj->subfield_code_count;

Get subfield code count.

Returns character.

type

 my $type = $obj->type;

Get type of record.

Returns character.

type_of_control

 my $type_of_control = $obj->type_of_control;

Get type of control.

Returns character.

undefined

 my $undefined = $obj->undefined;

Get undefined.

Returns character.

ERRORS

 new():
         Parameter 'bibliographic_level' must be one of defined strings.
                 String: %s
                 Possible strings: a b c d i m s
         Parameter 'char_coding_scheme' must be one of defined strings.
                 String: %s
                 Possible strings: ' ' a
         Parameter 'descriptive_cataloging_form' must be one of defined strings.
                 String: %s
                 Possible strings: ' ' a c i n u
         Parameter 'encoding_level' must be one of defined strings.
                 String: %s
                 Possible strings: ' ' 1 2 3 4 5 7 8 u z
         Parameter 'impl_def_portion_len' must be one of defined strings.
                 String: %s
                 Possible strings: 0
         Parameter 'indicator_count' must be one of defined strings.
                 String: %s
                 Possible strings: 2
         Parameter 'length_of_field_portion_len' must be one of defined strings.
                 String: %s
                 Possible strings: 4
         Parameter 'multipart_resource_record_level' must be one of defined strings.
                 String: %s
                 Possible strings: ' ' a b c
         Parameter 'raw' has length different than '24'.
                 Value: %s
         Parameter 'starting_char_pos_portion_len' must be one of defined strings.
                 String: %s
                 Possible strings: 5
         Parameter 'status' must be one of defined strings.
                 String: %s
                 Possible strings: a c d n p
         Parameter 'subfield_code_count' must be one of defined strings.
                 String: %s
                 Possible strings: 2
         Parameter 'type' must be one of defined strings.
                 String: %s
                 Possible strings: a c d e f g i j k m o p r t
         Parameter 'type_of_control' must be one of defined strings.
                 String: %s
                 Possible strings: ' ' a
         Parameter 'undefined' must be one of defined strings.
                 String: %s
                 Possible strings: 0

EXAMPLE

 use strict;
 use warnings;

 use Data::Printer;
 use Data::MARC::Leader;

 my $obj = Data::MARC::Leader->new(
         'bibliographic_level' => 'm',
         'char_coding_scheme' => 'a',
         'data_base_addr' => 541,
         'descriptive_cataloging_form' => 'i',
         'encoding_level' => ' ',
         'impl_def_portion_len' => '0',
         'indicator_count' => '2',
         'length' => 2200,
         'length_of_field_portion_len' => '4',
         'multipart_resource_record_level' => ' ',
         'raw' => '02200cem a2200541 i 4500',
         'starting_char_pos_portion_len' => '5',
         'status' => 'c',
         'subfield_code_count' => '2',
         'type' => 'e',
         'type_of_control' => ' ',
         'undefined' => '0',
 );

 # Print out.
 p $obj;

 # Output:
 # Data::MARC::Leader  {
 #     parents: Mo::Object
 #     public methods (3):
 #         BUILD
 #         Mo::utils:
 #             check_strings
 #         Readonly:
 #             Readonly
 #     private methods (0)
 #     internals: {
 #         bibliographic_level               "m",
 #         char_coding_scheme                "a",
 #         data_base_addr                    541,
 #         descriptive_cataloging_form       "i",
 #         encoding_level                    " ",
 #         impl_def_portion_len              0,
 #         indicator_count                   2,
 #         length                            2200,
 #         length_of_field_portion_len       4,
 #         multipart_resource_record_level   " ",
 #         raw                               "02200cem a2200541 i 4500",
 #         starting_char_pos_portion_len     5,
 #         status                            "c",
 #         subfield_code_count               2,
 #         type                              "e",
 #         type_of_control                   " ",
 #         undefined                         0
 #     }
 # }

DEPENDENCIES

Mo, Mo::utils, Readonly.

REPOSITORY

https://github.com/michal-josef-spacek/Data-MARC-Leader

AUTHOR

Michal Josef Špaček mailto:skim@cpan.org

http://skim.cz

LICENSE AND COPYRIGHT

© 2023-2024 Michal Josef Špaček

BSD 2-Clause License

VERSION

0.06