Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  BIO::DAS::FEATURE (3)

.ds Aq ’


Bio::Das::Segment::Feature - A genomic annotation



  use Bio::Das;

  # contact a DAS server using the "elegans" data source
  my $das      = Bio::Das->new( => elegans);

  # fetch a segment
  my $segment  = $das->segment(-ref=>CHROMOSOME_I,-start=>10_000,-stop=>20_000);

  # get features from segment
  for my $feature ($segment->features) {
     my $id     = $feature->id;
     my $label  = $feature->label;
     my $type   = $feature->type;
     my $category  = $feature->category;
     my $refseq = $feature->refseq;
     my $reference = $feature->reference;
     my $start  = $feature->start;
     my $stop   = $feature->stop;
     my $score  = $feature->score;
     my $orientation = $feature->orientation;
     my $phase  = $feature->phase;
     my $link   = $feature->link;
     my $group  = $feature->group;
     my @subs   = $feature->sub_seqFeature;


A Bio::Das::Segment::Feature object contains information about a feature on the genome retrieve from a DAS server. Each feature — also known as an annotation — has a start and end position on the genome relative to a reference sequence, as well as a human-readable label, a feature type, a category, and other information. Some features may have subfeatures. The attributes of a feature are described at


Bio::Das::Segment::Feature objects are created by calling the features() method of a Bio::Das::Segment object created earlier. See Bio::Das::Segment for details.


The following methods provide access to the attributes of a feature. Most are implemented as read/write accessors: calling them without an argument returns the current value of the attribute. Calling the methods with an argument sets the attribute and returns its previous value.
$id = $feature->id([$newid]) Get or set the feature ID. This is an identifier for the feature, unique across the DAS server from which it was retrieved.
$label = $feature->label([$newlabel]) Get or set the label for the feature. This is an optional human-readable label that may be used to display the feature in text form. You may use the ID if label() returns undef.
$type = $feature->type([$newtype]) Get or set the type of the feature. This is a required attribute. The value returned is an object of type Bio::Das::Type, which contains information about the type of the annotation and the method used to derive it.
$segment = $feature->([$newsegment]) Get or set the Bio::Das::Segment from which this feature was derived.
$source = $feature->source Get the Bio::Das object from which this feature was retrieved. This method is a front end to the associated segment’s source() method, and is therefore read-only.
$refseq = $feature->refseq Get the reference sequence on which this feature’s coordinates are based. This method is a front end to the associated segment’s refseq() method, and is therefore read-only.
$start = $feature->start([$newstart]) Get or set the starting position of the feature, in refseq coordinates.
$stop = $feature->stop([$newstop]) Get or set the stopping position of the feature, in refseq coordinates.
$isreference = $feature->stop([$newreference]) Get or set the value of the reference flag, which is true if the feature can be used as a sequence coordinate landmark.
$method = $feature->method Return the ID of the method used to derive this feature. This is a front end to the feature type’s method() method (redundancy intended) and is therefore read-only.
$category = $feature->category Return the ID of the category in which this feature calls. This is a front end to the feature type’s category() method and is therefore read-only.
$score = $feature->score([$newscore]) Get or set the score of this feature, a floating point number which might mean something in the right context.
$orientation = $feature->orientation([$neworientation]) Get or set the orientation of this feature relative to the genomic reference sequence. This is one of the values +1, 0 or -1.
$phase = $feature->phase([$newphase]) Get or set the phase of the feature (its position relative to a reading frame). The returned value can be 0, 1, 2 or undef if the phase is irrelevant to this feature type.
$group = $feature->group([$newgroup]) Get or set the group ID for the feature. Groups are used to group together logically-related features, such as the exons of a gene model.
$url = $feature->link([$newurl]) Get or set the URL that will return additional information about the feature.
$label = $feature->link_label([$newlabel]) Get or set the label that the DAS server recommends should be used for the link.
$note = $feature->note([$newnote]) Get or set the human-readable note associated with the feature.
$feature->each_tag_value() =item $feature->all_tags() =item $feature->add_tag_value() =item $feature->remove_tag() =item $feature->attributes() The tag* methods work just like they do in Bio::SeqFeatureI. The attributes() method follows the conventions in Bio::DB::SeqFeature.
$target = $feature->target
($target,$start,$stop) = $feature->target
$feature->target($target,$start,$stop) These three methods get or set the target that is optionally associated with alignments. In a scalar context, target() returns the ID of the target, while in an array context, the method returns a three-element list consisting of the target ID, and the start and end position of the alignment.

You may pass a three-element list to change the target and range.

$target_label = $feature->target_label([$newlabel]) This method returns an optional label assigned to the target.
$description = $feature->description This method returns a human-readable description of the feature. It returns the value of note(), link_label() or target_label(), in that priority.
@segments = $feature->segments
@segments = $feature->sub_seqFeature These methods are aliases. Both return an array of sub-parts of the feature in the form of Das::Sequence::Feature objects. Currently (March 2001) this is only implemented for grouped objects of type similarity and for transcripts (the union of introns and exons in a group).

    Bio::SeqFeatureI METHODS

In addition to the methods listed above, Bio::Das::Segment::Feature implements all the methods required for the Bio::SeqFeatureI class.


 Title   : get_SeqFeatures
 Usage   : @feat = $feature->get_SeqFeatures([$method])
 Function: get subfeatures
 Returns : a list of Bio::DB::GFF::Feature objects
 Args    : a feature method (optional)
 Status  : Public

This method returns a list of any subfeatures that belong to the main feature. For those features that contain heterogeneous subfeatures, you can retrieve a subset of the subfeatures by providing a method name to filter on.


 Title   : add_subfeature
 Usage   : $feature->add_subfeature($feature)
 Function: add a subfeature to the feature
 Returns : nothing
 Args    : a Bio::DB::GFF::Feature object
 Status  : Public

This method adds a new subfeature to the object. It is used internally by aggregators, but is available for public use as well.


 Title   : adjust_bounds
 Usage   : $feature->adjust_bounds
 Function: adjust the bounds of a feature
 Returns : ($start,$stop,$strand)
 Args    : none
 Status  : Public

This method adjusts the boundaries of the feature to enclose all its subfeatures. It returns the new start, stop and strand of the enclosing feature.


 Title   : sort_features
 Usage   : $feature->sort_features
 Function: sort features
 Returns : nothing
 Args    : none
 Status  : Public

This method sorts subfeatures in ascending order by their start position. For reverse strand features, it sorts subfeatures in descending order. After this is called sub_SeqFeature will return the features in order.

This method is called internally by merged_segments().


 Title   : compound
 Usage   : $flag = $f->compound([$newflag])
 Function: get or set the compound flag
 Returns : a boolean
 Args    : a new flag (optional)
 Status  : Public

This method gets or sets a flag indicated that the feature is not a primary one from the DAS server, but the result of aggregation.


When used in a string context, Bio::Das::Segment::Feature objects invoke the toString() method. This returns the value of the feature’s label, or invokes the inherited Bio::Das::Segment->toString() method if no label is available.


Lincoln Stein <>.

Copyright (c) 2001 Cold Spring Harbor Laboratory

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.


Bio::Das, Bio::Das::Type, Bio::Das::Segment, Bio::Das::Transcript, Bio::Das::Segment::GappedAlignment, Bio::RangeI


Hey! <B>The above document had some coding errors, which are explained below:B>
Around line 709: You forgot a ’=back’ before ’=head2’
Search for    or go to Top of page |  Section 3 |  Main Index

perl v5.20.3 DAS::FEATURE (3) 2009-08-26

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.