Scroll to navigation

Stone::GB_Sequence(3pm) User Contributed Perl Documentation Stone::GB_Sequence(3pm)
 

NAME

Stone::GB_Sequence - Specialized Access to GenBank Records

SYNOPSIS

  use Boulder::Genbank;  # No need to use Stone::GB_Sequence directly
  $gb = Boulder::Genbank->newFh qw(M57939 M28274 L36028);
  while ($entry = <$gb>) {
    print "Entry's length is ",$entry->length,"\n";
    @cds   = $entry->match_features(-type=>'CDS');
    @exons = $entry->match_features(-type=>'Exon',-start=>100,-end=>300);
  }
}

DESCRIPTION

Stone::GB_Sequence provides several specialized access methods to the various fields in a GenBank flat file record. You can return the sequence as a Bio::Seq object, or query the sequence for features that match positional or descriptional criteria that you provide.

CONSTRUCTORS

This class is not intended to be created directly, but via a Boulder::Genbank stream.

METHODS

In addition to the standard Stone methods and accessors, the following methods are provided. In the synopses, the variable $entry refers to a previously-created Stone::GB_Sequence object.

$length = $entry->length

Get the length of the sequence.

$start = $entry->start

Get the start position of the sequence, currently always "1".

$end = $entry->end

Get the end position of the sequence, currently always the same as the length.

@feature_list = $entry->features(-pos=>[50,450],-type=>['CDS','Exon'])

features() will search the entry feature list for those features that meet certain criteria. The criteria are specified using the -pos and/or -type argument names, as shown below.
-pos
Provide a position or range of positions which the feature must overlap. A single position is specified in this way:
   -pos => 1500;         # feature must overlap postion 1500
    
or a range of positions in this way:
   -pos => [1000,1500];  # 1000 to 1500 inclusive
    
If no criteria are provided, then features() returns all the features, and is equivalent to calling the Features() accessor.
-type, -types
Filter the list of features by type or a set of types. Matches are case-insensitive, so "exon", "Exon" and "EXON" are all equivalent. You may call with a single type as in:
   -type => 'Exon'
    
or with a list of types, as in
   -types => ['Exon','CDS']
    
The names "-type" and "-types" can be used interchangeably.

$seqObj = $entry->bioSeq;

Returns a Bio::Seq object from the Bioperl project. Dies with an error message unless the Bio::Seq module is installed.

AUTHOR

Lincoln D. Stein <lstein@cshl.org>.

COPYRIGHT

Copyright 1997-1999, Cold Spring Harbor Laboratory, Cold Spring Harbor NY. This module can be used and distributed on the same terms as Perl itself.

SEE ALSO

Boulder, <Boulder:Genbank>, Stone
2011-03-05 perl v5.10.1