NCIP::Item and friends.
[working/NCIPServer.git] / lib / NCIP / Item / BibliographicRecordId.pm
1 # ---------------------------------------------------------------
2 # Copyright © 2014 Jason J.A. Stephenson <jason@sigio.com>
3 #
4 # This file is part of NCIPServer.
5 #
6 # NCIPServer is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
10 #
11 # NCIPServer is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 # General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with NCIPServer.  If not, see <http://www.gnu.org/licenses/>.
18 # ---------------------------------------------------------------
19 package NCIP::Item::BibliographicRecordId;
20
21 use parent qw(Class::Accessor);
22
23 =head1 NAME
24
25 BibliographicRecordId - As defined in z39.83-1-2012
26
27 =head1 SYNOPSIS
28
29
30
31 =head1 DESCRIPTION
32
33 Bibliographic Record Id consists of Bibliographic Record Identifier
34 and a choice of either Bibliographic Record Identifier Code OR Agency
35 Id.
36
37 Occurs 0 or more times.
38
39 None of these component elements are repeatable.
40
41 =head1 FIELDS
42
43 =head2 BibliographicRecordIdentifier
44
45 Text string that identifies the machine-readable record that describes
46 a bibliographic item.
47
48 Occurs 1 and only 1 time.
49
50 =head2 AgencyId
51
52 In this context, identifies the Agency that is the source of the
53 bibliographic record when that Agency is not listed explicitly as a
54 value in the Bibliographic Record Identifier Code.
55
56 Occurs 1 and only 1 time, but only if Bibliographic Record Identifier
57 Code is not present.
58
59 =head2 BibliographicRecordIdentifierCode
60
61 Text string to identify the numbering scheme that uniquely identifies
62 a bibliographic record. Code values are usually associated with
63 national bibliographies or bibliographic utilities.
64
65 Occurs 1 and only 1 time, but only if Agency Id is not present.
66
67 Examples: ANBN (Australian National Bibliography Number), BNBN
68 (British National Bibliography Number), LCCN (Library of Congress
69 Control Number)
70
71 =cut
72
73 NCIP::Item::BibliographicRecordId->mk_accessors(
74     qw(
75           BibliographicRecordIdentifier
76           AgencyId
77           BibliographicRecordIdentifierCode
78       )
79 );
80
81 1;