File Coverage

blib/lib/MARC/Convert/Wikidata/Object/Kramerius.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package MARC::Convert::Wikidata::Object::Kramerius;
2              
3 7     7   233235 use strict;
  7         17  
  7         356  
4 7     7   37 use warnings;
  7         16  
  7         475  
5              
6 7     7   3437 use Mo qw(is);
  7         4215  
  7         50  
7              
8             our $VERSION = 0.15;
9              
10             has kramerius_id => (
11             is => 'ro',
12             );
13              
14             has object_id => (
15             is => 'ro',
16             );
17              
18             # TODO Remove if i could construct URL by some method.
19             has url => (
20             is => 'ro',
21             );
22              
23             1;
24              
25             __END__
26              
27             =pod
28              
29             =encoding utf8
30              
31             =head1 NAME
32              
33             MARC::Convert::Wikidata::Object::Kramerius - Bibliographic Wikidata object for Kramerius link by MARC record.
34              
35             =head1 SYNOPSIS
36              
37             use MARC::Convert::Wikidata::Object::Kramerius;
38              
39             my $obj = MARC::Convert::Wikidata::Object::Kramerius->new(%params);
40             my $kramerius_id = $obj->kramerius_id;
41             my $object_id = $obj->object_id;
42             my $url = $obj->url;
43              
44             =head1 METHODS
45              
46             =head2 C<new>
47              
48             my $obj = MARC::Convert::Wikidata::Object::Kramerius->new(%params);
49              
50             Constructor.
51              
52             =over 8
53              
54             =item * C<kramerius_id>
55              
56             Kramerius system id.
57              
58             Parameter is optional.
59              
60             Default value is undef.
61              
62             =item * C<object_id>
63              
64             Kramerius system object id.
65              
66             Parameter is optional.
67              
68             Default value is undef.
69              
70             =item * C<url>
71              
72             URL of Kramerius link.
73              
74             Parameter is optional.
75              
76             Default value is undef.
77              
78             =back
79              
80             Returns instance of object.
81              
82             =head2 C<kramerius_id>
83              
84             my $kramerius_id = $obj->kramerius_id;
85              
86             Get Kramerius system id.
87              
88             Returns string.
89              
90             =head2 C<object_id>
91              
92             my $object_id = $obj->object_id;
93              
94             Get Kramerius system object id.
95              
96             Returns string.
97              
98             =head2 C<url>
99              
100             my $url = $obj->url;
101              
102             Get Kramerius system object url.
103              
104             Returns string.
105              
106             =head1 EXAMPLE1
107              
108             =for comment filename=create_and_dump_kramerius.pl
109              
110             use strict;
111             use warnings;
112              
113             use Data::Printer;
114             use MARC::Convert::Wikidata::Object::Kramerius;
115              
116             my $obj = MARC::Convert::Wikidata::Object::Kramerius->new(
117             'kramerius_id' => 'mzk',
118             'object_id' => '814e66a0-b6df-11e6-88f6-005056827e52',
119             'url' => 'https://www.digitalniknihovna.cz/mzk/view/uuid:814e66a0-b6df-11e6-88f6-005056827e52',
120             );
121              
122             p $obj;
123              
124             # Output:
125             # MARC::Convert::Wikidata::Object::Kramerius {
126             # parents: Mo::Object
127             # public methods (0)
128             # private methods (0)
129             # internals: {
130             # kramerius_id "mzk",
131             # object_id "814e66a0-b6df-11e6-88f6-005056827e52" (dualvar: 8.14e+68),
132             # url "https://www.digitalniknihovna.cz/mzk/view/uuid:814e66a0-b6df-11e6-88f6-005056827e52"
133             # }
134             # }
135              
136             =head1 DEPENDENCIES
137              
138             L<Mo>.
139              
140             =head1 SEE ALSO
141              
142             =over
143              
144             =item L<MARC::Convert::Wikidata>
145              
146             Conversion class between MARC record and Wikidata object.
147              
148             =back
149              
150             =head1 REPOSITORY
151              
152             L<https://github.com/michal-josef-spacek/MARC-Convert-Wikidata-Object>
153              
154             =head1 AUTHOR
155              
156             Michal Josef Špaček L<mailto:skim@cpan.org>
157              
158             L<http://skim.cz>
159              
160             =head1 LICENSE AND COPYRIGHT
161              
162             © Michal Josef Špaček 2021-2025
163              
164             BSD 2-Clause License
165              
166             =head1 VERSION
167              
168             0.15
169              
170             =cut