Ace::Sequence::Feature(3) Examine Sequence Feature Tables

SYNOPSIS


# open database connection and get an Ace::Object sequence
use Ace::Sequence;
# get a megabase from the middle of chromosome I
$seq = Ace::Sequence->new(-name => 'CHROMOSOME_I,
-db => $db,
-offset => 3_000_000,
-length => 1_000_000);
# get all the homologies (a list of Ace::Sequence::Feature objs)
@homol = $seq->features('Similarity');
# Get information about the first one
$feature = $homol[0];
$type = $feature->type;
$subtype = $feature->subtype;
$start = $feature->start;
$end = $feature->end;
$score = $feature->score;
# Follow the target
$target = $feature->info;
# print the target's start and end positions
print $target->start,'-',$target->end, "\n";

DESCRIPTION

Ace::Sequence::Feature is a subclass of Ace::Sequence::Feature specialized for returning information about particular features in a GFF format feature table.

OBJECT CREATION

You will not ordinarily create an Ace::Sequence::Feature object directly. Instead, objects will be created in response to a feature() call to an Ace::Sequence object. If you wish to create an Ace::Sequence::Feature object directly, please consult the source code for the new() method.

OBJECT METHODS

Most methods are inherited from Ace::Sequence. The following methods are also supported:
seqname()
  $object = $feature->seqname;

Return the ACeDB Sequence object that this feature is attached to. The return value is an Ace::Object of the Sequence class. This corresponds to the first field of the GFF format and does not necessarily correspond to the Ace::Sequence object from which the feature was obtained (use source_seq() for that).

source()
method()
subtype()
  $source = $feature->source;

These three methods are all synonyms for the same thing. They return the second field of the GFF format, called ``source'' in the documentation. This is usually the method or algorithm used to predict the feature, such as ``GeneFinder'' or ``tRNA'' scan. To avoid ambiguity and enhance readability, the method() and subtype() synonyms are also recognized.

feature()
type()
  $type = $feature->type;

These two methods are also synonyms. They return the type of the feature, such as ``exon'', ``similarity'' or ``Predicted_gene''. In the GFF documentation this is called the ``feature'' field. For readability, you can also use type() to fetch the field.

abs_start()
  $start = $feature->abs_start;

This method returns the absolute start of the feature within the sequence segment indicated by seqname(). As in the Ace::Sequence method, use start() to obtain the start of the feature relative to its source.

abs_start()
  $start = $feature->abs_start;

This method returns the start of the feature relative to the sequence segment indicated by seqname(). As in the Ace::Sequence method, you will more usually use the inherited start() method to obtain the start of the feature relative to its source sequence (the Ace::Sequence from which it was originally derived).

abs_end()
  $start = $feature->abs_end;

This method returns the end of the feature relative to the sequence segment indicated by seqname(). As in the Ace::Sequence method, you will more usually use the inherited end() method to obtain the end of the feature relative to the Ace::Sequence from which it was derived.

score()
  $score = $feature->score;

For features that are associated with a numeric score, such as similarities, this returns that value. For other features, this method returns undef.

strand()
  $strand = $feature->strand;

Returns the strandedness of this feature, either ``+1'' or ``-1''. For features that are not stranded, returns 0.

reversed()
  $reversed = $feature->reversed;

Returns true if the feature is reversed relative to its source sequence.

frame()
  $frame = $feature->frame;

For features that have a frame, such as a predicted coding sequence, returns the frame, either 0, 1 or 2. For other features, returns undef.

group()
info()
target()
  $info = $feature->info;

These methods (synonyms for one another) return an Ace::Object containing other information about the feature derived from the 8th field of the GFF format, the so-called ``group'' field. The type of the Ace::Object is dependent on the nature of the feature. The possibilities are shown in the table below:

  Feature Type           Value of Group Field
  ------------            --------------------
  
  note                   A Text object containing the note.
  
  similarity             An Ace::Sequence::Homology object containing
                         the target and its start/stop positions.
  intron                 An Ace::Object containing the gene from 
  exon                   which the feature is derived.
  misc_feature
  other                  A Text object containing the group data.
asString()
  $label = $feature->asString;

Returns a human-readable identifier describing the nature of the feature. The format is:

 $type:$name/$start-$end

for example:

 exon:ZK154.3/1-67

This method is also called automatically when the object is treated in a string context.

AUTHOR

Lincoln Stein <[email protected]> with extensive help from Jean Thierry-Mieg <[email protected]>

Copyright (c) 1999, Lincoln D. Stein

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.