Boulder::Medline(3pm)

πŸ“¦
version 1.30 Β· 4 versions
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Boulder::Medline πŸ’–

okay so bestie, welcome to Boulder::Medline, a lil Perl module from the User Contributed Perl Documentation collection that grabs Medline data records and hands them to you as parsed Boulder Stones ✨ it's giving data-wrangling main character energy fr fr.


🌸 NAME 🌸

Boulder::Medline β€” fetch Medline data records as parsed Boulder Stones πŸ¦‹


✨ SYNOPSIS ✨

parse a whole file of Medline records, easy peasy:

# parse a file of Medline records
$ml = new Boulder::Medline(-accessor=>'File',
                           -param => '/data/medline/medline.txt');
while (my $s = $ml->get) {
  print $s->Identifier;
  print $s->Abstract;
}

orrrr you can parse the flatfile yourself, no biggie, you do you πŸ’…:

# parse flatfile  yourself
open (ML,"/data/medline/medline.txt");
local $/ = "*RECORD*";
while (<ML>) {
   my $s = Boulder::Medline->parse($_);
   # etc.
}

🫢 DESCRIPTION 🫢

Boulder::Medline provides retrieval and parsing services for Medline records.

Like, more specifically, Boulder::Medline provides retrieval and parsing services for NCBI Medline records. It hands back Medline entries in Stone format so you can get at all the various fields and values without wanting to scream. Boulder::Medline is a descendent of Boulder::Stream, and gives you a stream-like interface to a series of Stone objects. slay πŸ’…

Access to Medline is provided by one accessor, which gives access to a local Medline database. When you create a new Boulder::Medline stream, you provide the accessors, along with accessor-specific parameters that control what entries to fetch. The accessor is:

  • File β€” this gives you access to local Medline entries by reading from a flat file. The stream will return a Stone corresponding to each of the entries in the file, starting from the top of the file and working downward. The parameter is the path to the local file. πŸ“‚

It is also possible to parse a single Medline entry from a text string stored in a scalar variable, returning a Stone object. (yes bestie, one at a time, we love flexibility)

πŸ’œ Boulder::Medline methods πŸ’œ

This section lists the public methods that the Boulder::Medline class makes available. buckle up.

🌟 new()

# Local fetch via File
$ml=new Boulder::Medline(-accessor  =>  'File',
                         -param     =>  '/data/medline/medline.txt');

The new() method creates a new Boulder::Medline stream on the accessor provided. The only possible accessor is File. If successful, the method returns the stream object. Otherwise it returns undef. (ngl undef is the villain of every story 😭)

new() takes the following arguments:

        -accessor       Name of the accessor to use
        -param          Parameters to pass to the accessor

Specify the accessor to use with the -accessor argument. If not specified, it defaults to File. periodt.

-param is an accessor-specific argument. The possibility is:

For File, the -param argument must point to a string-valued scalar, which will be interpreted as the path to the file to read Medline entries from. πŸ—‚οΈ

🌟 get()

The get() method is inherited from Boulder::Stream, and simply returns the next parsed Medline Stone, or undef if there is nothing more to fetch. It has the same semantics as the parent class, including the ability to restrict access to certain top-level tags. iconic behavior honestly πŸ‘‘

🌟 put()

The put() method is inherited from the parent Boulder::Stream class, and will write the passed Stone to standard output in Boulder format. Which means β€” heads up bestie β€” it is currently not possible to write a Boulder::Medline object back into Medline flatfile form. πŸ’€ so don't try it, ok?


πŸ”₯ OUTPUT TAGS πŸ”₯

The tags returned by the parsing operation are taken from the MEDLARS definition file MEDDOC.DOC. (iykyk)

⭐ Top-Level Tags ⭐

These are tags that appear at the top level of the parsed Medline entry:

ABSTRACT
ABSTRACT AUTHOR
ADDRESS
AUTHOR
CALL NUMBER
CAS REGISTRY/EC NUMBER
CLASS UPDATE DATE
COMMENTS
COUNTRY
DATE OF ENTRY
DATE OF PUBLICATION
ENGLISH ABSTRACT INDICATOR
ENTRY MONTH
GENE SYMBOL
ID NUMBER
INDEXING PRIORITY
ISSN
ISSUE/PART/SUPPLEMENT
JOURNAL SUBSET
JOURNAL TITLE CODE
LANGUAGE
LAST REVISION DATE
MACHINE-READABLE IDENTIFIER
MeSH HEADING
NO-AUTHOR INDICATOR
NOT FOR PUBLICATION
NUMBER OF REFERENCES
PAGINATION
PERSONAL NAME AS SUBJECT
PUBLICATION TYPE
RECORD ORIGINATOR
SECONDARY SOURCE ID
SPECIAL LIST INDICATOR
TITLE
TITLE ABBREVIATION
TRANSLITERATED/VERNACULAR  TITLE
UNIQUE IDENTIFIER
VOLUME ISSUE

πŸŽ€ Identifier

The Medline identifier of this entry. Identifier is a single-value tag.

Example:

      my $identifierNo = $s->Identifier;

πŸŽ€ Title

The Medline title for this entry.

Example:

      my $titledef=$s->Title;

🌈 SEE ALSO 🌈

Boulder, Boulder::Blast, Boulder::Genbank β€” go read the whole squad, bestie 🫢


πŸ‘‘ AUTHOR πŸ‘‘

Lincoln Stein <lstein@cshl.org>. Luca I.G. Toldo <luca.toldo@merck.de>

Copyright (c) 1997 Lincoln D. Stein Copyright (c) 1999 Luca I.G. Toldo

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty. 🧚


ok that's the whole thing, no notes πŸ’–

and that's a wrap, bestie β€” this page is from perl v5.34.0, dated 2022-06-08, and it's the Boulder::Medline(3pm) manual page. go forth and parse, you absolute icon πŸŒΈβœ¨πŸ’…

πŸ“¦ where this page comes from