Biblio...Segment(3pm)

πŸ’– Biblio::SICI::ItemSegment β€” the item segment of a SICI πŸ’–

okay bestie, welcome to Biblio::SICI::ItemSegment, a lil Perl module that lives in the User Contributed Perl Documentation corner of your 3pm man pages 🫢

VERSION: this is version 0.04 ✨


🌸 SYNOPSIS 🌸

fr fr here's the vibe:

my $sici = Biblio::SICI->new();

$sici->item->issn('2232-7651');

that's it, that's the whole thing πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

⚠️ read this first, bestie: you are expected to not directly instantiate objects of this class! like, don't do it. let the big kids handle it. no cap.

so. the item segment of a SICI describes various aspects of the serial item that the SICI is referencing πŸ“š

and here's the thing β€” unlike the contribution segment, which may be empty (she's allowed to be a little mysterious πŸ™ˆ), the item segment is required! she is mandatory. she is the main character. periodt πŸ‘‘


πŸ’… ATTRIBUTES πŸ’…

for each attribute, there are also clearer (clear_) and predicate (has_) methods provided. so you can check if a thing exists, and you can yeet it. iconic.

  • issn β€” the ISSN of the serial πŸ“–
  • chronology β€” identifies a specific date β€” usually the cover date β€” for an item of a serial title. it follows the format YYYYMMDD with only the applicable levels being used. and for MM, in addition to 01 to 12, the values 21 to 24 represent seasons (Spring, Summer, Fall, Winter) and the values 31 to 34 represent the four quarters of a year 🌈
  • enumeration β€” describes which item of the serial is referenced. the most common way of identifying an item is using a combination of volume and issue numbers, which is why there are separate attributes for these kinds of data.
🚨 okay so heads up: setting a value for enumeration means that any value present in the attributes volume, issue or supplOrIdx gets removed! like, gone. deleted. bye bestie πŸ’€
  • volume β€” the volume designation of the serial item.
⚠️ note that setting a value for this attribute automatically clears the enumeration attribute!
  • issue β€” the issue designation of the serial item.
⚠️ note that setting a value for this attribute automatically clears the enumeration attribute!
  • supplOrIdx β€” a one character code to describe if the SICI refers to either a supplement of the described item (represented as '+') or to an index (represented as '*') which is published independently from a regular item.

(if you wish to refer to an index within an item please have a look at the dpi attribute of the control segment! πŸ‘€)

⚠️ note that setting a value for this attribute automatically clears the enumeration attribute!

✨ METHODS ✨

🌟 LIST "year"()

extracts the year info from the chronology attribute. returns undef if no chronology has been set. may return either one or two values, depending on the given chronology. e.g.:

  • if the chronology value is 199624/199721 (an item published Winter 1996 / Spring 1997) this method will return (1996, 1997)
  • if the chronology value is 20021201 (item published on Dec. 1st, 2002) this method will return (2002)

πŸŒ™ LIST "month"()

extracts the month(s) from the chronology. returns undef if no chronology has been set or no month info is available from the chronology. may return either one or two values, depending on the given chronology. each value may be in the ranges 01 to 12, or 21 to 24, or 31 to 34; with 21 to 24 being the codes for the seasons Spring, Summer, Fall, and Winter and 31 to 34 being the codes for the four quarters of a year (cf. the info on the chronology attribute). e.g.:

  • if the chronology value is 199911/12 (an item published November / December 1999) this method will return (11, 12)
  • if the chronology value is 20021201 (item published on Dec. 1st, 2002) this method will return (12)
  • if the chronology value is 200721/22 (an item published Spring / Summer 2007) this method will return (21, 22)

β˜€οΈ LIST "day"()

extracts the days(s) from the chronology. returns undef if no chronology has been set or no day info is available from the chronology. may return either one or two values, depending on the given chronology. e.g.:

  • if the chronology value is 19991101/02 (an item published November 1st / November 2nd 1999) this method will return (01, 02) (note the leading zeroes!); day spans are quite unlikely, but not prohibited πŸ‘€
  • if the chronology value is 20021201 (item published on Dec. 1st, 2002) this method will return (01)

πŸ’œ STRING "to_string"()

returns a stringified representation of the data in the item segment. she's giving string energy ✨

πŸŽ€ "reset"()

resets all attributes to their default values. clean slate, fresh start, new me 🌸

πŸ‘‘ BOOL "is_valid"()

checks if the data for the control segment conforms to the standard. vibe check, but for data πŸ’…


🌈 SEE ALSO 🌈

  • Biblio::SICI::Role::ValidSegment

πŸ’– AUTHOR πŸ’–

Heiko Jansen <hjansen@cpan.org>


this software is copyright (c) 2014 by Heiko Jansen.

this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. slay 🫢


and that's the whole page, bestie!! this came to you courtesy of perl v5.36.0, dated 2023-02-06 β€” mwah, go forth and segment your items πŸ’‹βœ¨

πŸ“¦ where this page comes from