DOKK / manpages / debian 12 / libboulder-perl / Boulder::Medline.3pm.en
Boulder::Medline(3pm) User Contributed Perl Documentation Boulder::Medline(3pm)

Boulder::Medline - Fetch Medline data records as parsed Boulder Stones

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

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

Boulder::Medline provides retrieval and parsing services for NCBI Medline records. It returns Medline entries in Stone format, allowing easy access to the various fields and values. Boulder::Medline is a descendent of Boulder::Stream, and provides a stream-like interface to a series of Stone objects.

Access to Medline is provided by one accessors, which give access to 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 accessors is:

This provides 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.

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

   # 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 accessors is File. If successful, the method returns the stream object. Otherwise it returns undef.

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.

-param is an accessor-specific argument. The possibilities 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.

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.
The put() method is inherited from the parent Boulder::Stream class, and will write the passed Stone to standard output in Boulder format. This means that it is currently not possible to write a Boulder::Medline object back into Medline flatfile form.

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

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
The Medline identifier of this entry. Identifier is a single-value tag.

Example:

      my $identifierNo = $s->Identifier;
    
The Medline title for this entry.

Example:
my $titledef=$s->Title;

Boulder, Boulder::Blast, Boulder::Genbank

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.

2022-06-08 perl v5.34.0