The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

SiRNA - Perl object for designing small inhibitory RNAs.

SYNOPSIS

use Bio::Tools::SiRNA;

my $sirna_designer = Bio::Tools::SiRNA->new( -target => $bio_seq,
                                             -rules  => 'saigo'
  );
my @pairs = $sirna_designer->design;

foreach $pair (@pairs) {
    my $sense_oligo_sequence = $pair->sense->seq;
    my $antisense_oligo_sequence = $pair->antisense->seq;

    # print out results
    print join ("\t", $pair->start, $pair->end, $pair->rank,
                $sense_oligo_sequence, $antisense_oligo_sequence), "\n";
}

DESCRIPTION

Package for designing siRNA reagents.

Input is a Bio::SeqI-compliant object (the target).

Output is a list of Bio::SeqFeature::SiRNA::Pair objects, which are added to the feature table of the target sequence. Each Bio::SeqFeature::SiRNA::Pair contains two subfeatures (Bio::SeqFeature::Oligo objects) which correspond to the individual oligos. These objects provide accessors for the information on the individual reagent pairs.

This version of Bio::Tools::SiRNA represents a major change in architecture. Specific 'rulesets' for siRNA selection as developed by various groups are implemented as Bio::Tools::SiRNA::Ruleset objects, which inherit from Bio::Tools::SiRNA. This will make it easier to add new rule sets or modify existing approaches. Currently the Tuschl and Ui-Tei (2004) rules are implemented. For consistency, the Tuschl rules are implemented by default.

In addition, this module provides three 'extra' rules which can be added above and beyond any ruleset.

  1. SiRNAs that overlap known SNPs (identified as SeqFeatures with primary tag = variation) can be avoided.

  2. Other regions (with primary tag = 'Excluded') can also be skipped. I use this with Bio::Tools::Run::Mdust to avoid low-complexity regions (must be run separately), but other programs could also be used.

  3. SiRNAs may also be selected in the 3 prime UTR of a gene by setting $sirna_designer->include_3pr() to true.

EXPORT

None.

SEE ALSO

Bio::Tools::Run::Mdust, Bio::SeqFeature::SiRNA::Pair, Bio::SeqFeature::SiRNA::Oligo..

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 the Bioperl mailing list. Your participation is much appreciated.

bioperl-l@bioperl.org                  - General discussion
http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

Support

Please direct usage questions or support issues to the mailing list:

bioperl-l@bioperl.org

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.

Reporting Bugs

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

https://github.com/bioperl/bioperl-live/issues

AUTHOR

Donald Jackson (donald.jackson@bms.com)

APPENDIX

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

new

Title		: new
Usage		: my $sirna_designer = Bio::Tools::SiRNA->new();
Function	: Constructor for designer object
Returns	: Bio::Tools::SiRNA object
Args		: target - the target sequence for the SiRNAs as a Bio::Seq::RichSeq
                 start_pad - distance from the CDS start to skip (default 75)
                 end_pad - distance from the CDS end to skip (default 50)
                 include_3pr - set to true to include SiRNAs in the 3prime UTR (default false)
                 rules - rules for selecting siRNAs, currently supporting saigo and tuschl
                 min_gc - minimum GC fraction (NOT percent) (default 0.4)
                 max_gc - maximum GC fraction (NOT percent) (default 0.6)
                 cutoff - worst 'rank' accepted(default 3)
                 avoid_snps - boolean - reject oligos that overlap a variation
                    SeqFeature in the target (default true)
                 gstring - maximum allowed consecutive Gs.
                    Too many can cause problems in synthesis (default 4)
 Note		: All arguments can also be changed/accessed using autoloaded 
                methods such as:

   my $start_pad = $sirna_designer->start_pad().

target

Title		: target
Usage		: my $target_seq = $sirna_designer->target(); # get the current target
                OR 
                $sirna_designer->target($new_target_seq); # set a new target 
Function	: Set/get the target as a Bio::SeqI-compliant object
Returns	: a Bio::SeqI-compliant object
Args		: a Bio::SeqI-compliant object (optional)

rules

Title	: rules
Usage	: $sirna->rules('ruleset')
Purpose	: set/get ruleset to use for selecting SiRNA oligo pairs.
Returns	: not sure yet
Args	: a ruleset name (currently supported: Tuschl, Saigo)
              or a Bio::Tools::SiRNA::RulesetI compliant object

design

Title		: design
Usage		: my @pairs = $sirna_designer->design();
Purpose	: Design SiRNA oligo pairs.  
Returns	: A list of SiRNA pairs as Bio::SeqFeature::SiRNA::Pair objects
Args		: none

add_oligos

Title		: add_oligos
Usage	 	: $sirna_designer->add_oligos($sequence, $start, $rank);
Purpose	: Add SiRNA olgos to target Bio::Seq as Bio::SeqFeature::SiRNA::Pair objects
Args		: Oligo sequence and start position (required), rank/score (optional)