The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Bio::BioStudio::RestrictionEnzyme

VERSION

Version 2.10

DESCRIPTION

BioStudio object that represents a restriction enzyme - inherits from Bio::GeneDesign::RestrictionEnzyme and adds attributes for feature annotation awareness. This object is heavily used in chromosome segmentation - for other uses the GeneDesign object should be sufficient.

AUTHOR

Sarah Richardson <smrichardson@lbl.gov>

CONSTRUCTORS

new

When this object is created it is also subject to the requirements of the ancestor Bio::GeneDesign::RestrictionEnzyme object. Use the ancestor flag -enzyme with a GeneDesign RestrictionEnzyme object, allowing the ancestral object to "clone" itself to create a new BioStudio RestrictionEnzyme object:

  my $newfeat = Bio::BioStudio::RestrictionEnzyme->new(
          -enzyme => $BamHI_Bio::GeneDesign::RestrictionEnzyme_object,
          -name => "BamHI_56781",
          -presence => "potential");
         

There are two required arguments:

    -name       the name of the enzyme
    
    -presence   (p)otential, (i)ntergenic, (e)xisting, or (a)ppended, the status
                of the enzyme
 

The other arguments are optional:

    -eligible   whether or not to ignore this enzyme when selecting segmentation
                enzymes; usually gets set automatically when the
                L<Bio::BioStudio::RestrictionEnzyme::Store> object is created.
                May only be undefined (omitted) or "no".
    
    -end        The stop coordinate of the enzyme
    
    -feature    The L<Bio::DB::SeqFeature> object associated with the enzyme -
                usually a gene; sometimes an intergenic region
    
    -featureid  The name of the feature associated with the enzyme - this is set
                automatically if -feature is used
    
    -overhangs  A comma separated list of overhangs that this enzyme can legally
                leave. This will be parsed into a hash reference.

    -strand     [1 or -1] If 1, the object is either oriented 5 prime to 3 prime
                on the Watson strand or is symmetric and therefore on both
                strands. If -1, the object is on the Crick strand.
    
    -peptide    The peptide sequence associated with the enzymes recognition
                site. Should only be supplied if the feature object associated
                with the enzyme is a gene, mRNA, or CDS object.
    
    -offset     This number indicates how far away from the recognition site
                the actual cut site is.
    
    -dbid       The primary key of this enzyme in the database; usually set by
                L<Bio::BioStudio::RestrictionEnzyme::Store> at the time of
                database creation
    
    -phang      The preferred overhang for use when committing this enzyme to
                sequence.
    

FUNCTIONS

line_report

This function outputs the restriction enzyme object in a format that is suitable for quickloading into a MySQL database - this is how the Bio::RestrictionEnzyme::Store database becomes populated.

ACCESSORS

name

The name of the enzyme; current BioStudio custom is that the name of an enzyme is its id (ie, the name of the protein), underscore, start coordinate. That is, BamHI_54671, or SacII_4689. But this is entirely arbitrary and will not impact processing.

presence

Enzymes can be any one of the following:

  (p)otential  : can be introduced into exonic sequence without changing protein
                 sequence - but does not exist now
                
  (i)ntergenic : exists in a non-exonic region. Most BioStudio algorithms do not
                 support editing such an enzyme.

  (e)xisting   : or exonic, this site is in a gene region and can be edited or
                 removed.
                 
  (a)ppended   : this site doesn't exist but will be appended to the sequence
                 

end

Bio::GeneDesign::RestrictionEnzyme objects have a start attribute, but not an end attribute.

eligible

Should this enzyme be considered for landmark status or not? This flag is usually set when the Bio::BioStudio::RestrictionEnzyme::Store database is created and populated. Enzymes whose presence is potential and whose eligibility is null are usually deleted rather than marked ineligible.

The only argument this accessor accepts is a string value of "no".

featureid

The id of the feature associated with the enzyme; this is a string and is useful when pulling objects out of the MySQL database, which currently doesn't store an actual Bio::DB::SeqFeature object, but only its id. Given the id, the feature can be looked up from a Bio::DB::SeqFeature::Store object.

overhangs

A hash reference where the keys are possible overhangs that may be left by the enzyme should it be edite into sequence.

strand

Is the recognition site on the Watson (1) or Crick (-1) strand?

If 1, the object is either oriented 5 prime to 3 prime on the Watson strand or is symmetric and therefore on both strands. If -1, the object is on the Crick strand.

peptide

IF the enzyme occurs in a gene, what peptide sequence (in the first frame of translation) covers the recognition site? Should only be defined if the associated feature is a CDS.

offset

How far away the overhang is from the recognition site, in bases (if there is an overhang).

movers

If this enzyme is introduced or edited into sequence, which other restriction enzyme recognition sites must be removed to make it a unique landmark?

Takes and returns an array reference, where each entry in the array is the name of a BioStudio restriction enzyme object.

creates

If this enzyme is introduced or edited into sequence, which other restriction enzyme recognition sites will it create?

Takes and returns an array reference, where each entry in the array is the id of a GeneDesign restriction enzyme object.

dbid

The entry in the primary key column of the MySQL database underlying the Bio::BioStudio::RestrictionEnzyme::Store object; this is usually used during database creation and culling and is unneccesary otherwise.

phang

If this enzyme is to be introduced or edited into sequence, which of its possible overhangs should be used? The argument must be a key that exists in the overhangs hash reference.

COPYRIGHT AND LICENSE

Copyright (c) 2014, BioStudio developers All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

* The names of Johns Hopkins, the Joint Genome Institute, the Lawrence Berkeley National Laboratory, the Department of Energy, and the BioStudio developers may not be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.