Ace::Sequence::Feature - Examine Sequence Feature Tables
# 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";
Ace::Sequence::Feature is a subclass of Ace::Sequence::Feature
specialized for returning information about particular features in a GFF
format feature table.
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.
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.
Ace, Ace::Object, Ace::Sequence,Ace::Sequence::Homol,
Ace::Sequence::FeatureList, GFF
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.