NAME

Bio::Tools::Analysis::Protein::Domcut - a wrapper around Domcut server

SYNOPSIS

use   Bio::Tools::Analysis::Protein::Domcut;
#get a  Bio::PrimarySeq
use Bio::PrimarySeq;
my $seq = new Bio::PrimarySeq
   (-seq=>'IKLCVNLAILAKAHLIELALAL',
   -primary_id=>'test'); # a Bio::PrimarySeqI object

my $domcut = Bio::Tools::Analysis::Protein::Domcut->new (-seq=>$seq);
$domcut->run;
print $domcut->result;# #raw text to standard out

DESCRIPTION

A module to remotely retrieve predictions of protein domain boundaries. Each residue in the protein receives a score, those better than the significance threshold and at a local minimum receive a rank - i.e., the best minimum is rank 1, the second best minimum is rank2 etc. These correspond to domain boundaries. e.g.,

my $analysis_object = Bio::Tools::Analysis::Protein::Domcut->new
   (-seq => $seq);

creates a new object. The sequence supplied must be a Bio::PrimarySeq and not a Bio::Seq object.

$analysis_object->run;

submits the query to the server and obtains raw text output

Given an amino acid sequence the results can be obtained in 4 formats, determined by the argument to the result method

  1. The raw text of the program output

    my $rawdata = $analysis_object->result;
  2. An reference to an array of hashes of scores for each state and the assigned state. Each element in the array is a residue (indexed from 0).

    my $data_ref = $analysis_object->result('parsed');
    print "score for helix at residue 2 is $data_ref->[1]{'helix'}\n";
    print "predicted struc  at residue 2 is $data_ref->[1]{'struc}\n";
  3. An array of Bio::SeqFeature::Generic objects where each feature is a predicted unit of secondary structure. Only stretches of helix/sheet predictions for longer than 4 residues are defined as helices. So, in order to add features to an existing Bio::Seq object;

    # get a Bio::Seq object
    my $seqobj;
    my $tool = Bio::Tools::Analysis::Protein::Domcut->new
        ( -seq => $seqobj->primary_seq);
    $tool->run;
    
    my @fts = $tool->result(Bio::SeqFeatureI);
    
    $seqobj->add_SeqFeature(@fts);
    
    # if you want  meta sequences as well :
    my $meta = $tool->result('meta');
    $seqobj->primary_seq($meta);
    
    # can access meta data in a Bio::Seq object via a 
    # call to primary_seq:
    
    print $seq4->primary_seq->named_submeta_text('Domcut', 1,2), "\n";
  4. A Bio::Seq::Meta::Array implementing sequence.

    This is a Bio::Seq object that can also hold data about each residue in the sequence In this case, the sequence can be associated with a single array of Domcut prediction scores. e.g.,

    my $meta_sequence = $analysis_object->result('meta');
    print "scores from residues 10 -20 are ",
        $meta_sequence->submeta_text(10,20), "\n";

    Many methods common to all analyses are inherited from Bio::Tools::Analysis::SimpleAnalysisBase.

SEE ALSO

Bio::SimpleAnalysisI, Bio::Tools::Analysis::SimpleAnalysisBase, Bio::Seq::Meta::Array, Bio::WebAgent

FEEDBACK

Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to one of the Bioperl mailing lists. Your participation is much appreciated.

bioperl-l@bioperl.org                       - General discussion
http://bio.perl.org/MailList.html           - About the mailing lists

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via email or the web:

bioperl-bugs@bio.perl.org
http://bugzilla.bioperl.org/

AUTHORS

Richard Adams, Richard.Adams@ed.ac.uk,

APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

result

Name    : result
Purpose : To retrieve results of analysis in one of several formats.
Usage   : $job->result (...)
Returns : a result created by running an analysis
Args    : various - see keysin $RESULT_SPEC. 

The method returns a result of an executed job. If the job was terminated by an error the result may contain an error message instead of the real data.

This implementation returns differently processed data depending on argument:

undef

Returns the raw ASCII data stream but without HTML tags

'Bio::SeqFeatureI'

The argument string defines the type of bioperl objects returned in an array. The objects are Bio::SeqFeature::Generic. Tagnames are 'score' and 'rank'.

'parsed'

Array of array references of [score, rank].

'all'

A Bio::Seq::Meta::Array object. Scores can be accessed using methods from this class. Meta sequence name is Domcut.