NAME
Bio::Restriction::IO::base - base enzyme set
SYNOPSIS
Do not use this module directly. Use it via the Bio::Restriction::IO class.
DESCRIPTION
This class defines some base methods for restriction enzyme input and at the same time gives a base list of common enzymes.
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 lists 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 the bugs and their resolution. Bug reports can be submitted via the web:
https://github.com/bioperl/bioperl-live/issues
AUTHOR
Rob Edwards, redwards@utmem.edu
CONTRIBUTORS
Heikki Lehvaslaiho, heikki-at-bioperl-dot-org Mark A. Jensen, maj-at-fortinbras-dot-us
APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
read
Title : read
Usage : $renzs = $stream->read
Function: reads all the restrction enzymes from the stream
Returns : a Bio::Restriction::Restriction object
Args : none
_xln_sub
Title : _xln_sub
Function: Translates withrefm coords to Bio::Restriction coords
Args : Bio::Restriction::Enzyme object, scalar integer (cut posn)
Note : Used internally; pass as a coderef to the B:R::Enzyme
constructor
Note : It is convenient for each format module to have its own
version of this; not currently demanded by the interface.
write
Title : write
Usage : $stream->write($renzs)
Function: writes restriction enzymes into the stream
Returns : 1 for success and 0 for error
Args : a Bio::Restriction::Enzyme
or a Bio::Restriction::EnzymeCollection object
verify_prototype
Title : verify_prototype
Purpose : checks enzyme against current prototype list (retrieved remotely)
Returns : returns TRUE if enzyme is prototype
Argument : Bio::Restriction::EnzymeI
Comments : This is an auxiliary method to retrieve and check an enzyme
as a prototype. It retrieves the current list, stores it
as a singleton instance, then uses it to check the prototype
and modify is_prototype() to true or false. Use as follows:
my $col = $io->read;
for my $enz ($col->each_enzyme) {
print $enz->name.":".$enz->site."\n";
print "\t".$io->verify_prototype($enz)."\n";
}
Common REBASE parsing methods
The rest of the methods in this file are to be used by other REBASE parsers. They are not to be used outside subclasses of this base class. (They are 'protected' in the sense the word is used in Java.)
_cuts_from_site
Title : _cuts_from_site
Usage : ($site, $cut, $comp_cut) = _cuts_from_site('ACGCGT(4/5)');
Function: Separates cut positions from a single site string.
Does nothing to site if it does not have the cut string
Returns : array of site_string, forward_cut_position, reverse_cut_position
Args : recognition site string
Note : Not used in withrefm refactor/maj
_meth
Title : _meth
Usage : ($pos, $meth) = $self->_meth('2(5)');
Function: Separates methylation postion and coce from a string.
Adjusts the postion depending on enzyme site length
and symmetry
Returns : array of position and methylation code
Args : 1. reference to Enzyme object
2. methylation description string
_coordinate_shift_to_cut
Title : _coordinate_shift_to_cut
Usage : $cut = $self->_coordinate_shift_to_cut($oricut, offset);
Function: Adjust cut position coordinates to start from the
first nucleotides of site
Returns : Cut position in correct coordinates
Args : 1. Original cut position
2. Length of the recognition site
Note : Not used in withrefm.pm refactor/maj
_make_multisites
Title : _make_multisites
Usage : $self->_make_multisites($first_enzyme, \@sites, \@mets)
Function: Bless a Bio::Restriction::Enzyme into
Bio::Restriction::Enzyme::MultiSite and clone it as many
times as there are alternative sites.
Returns : nothing, does in place editing
Args : 1. a Bio::Restriction::Enzyme
2. reference to an array of recognition site strings
3. reference to an array of methylation code strings, optional
_make_multicuts
Title : _make_multicuts
Usage : $self->_make_multicuts($first_enzyme, $precuts)
Function:
Bless a Bio::Restriction::Enzyme into
Bio::Restriction::Enzyme::MultiCut and clone it. The precut
string is processed to replase the cut sites in the cloned
object. Both objects refer to each other through others() method.
Returns : nothing, does in place editing
Args : 1. a Bio::Restriction::Enzyme
2. precut string, e.g. '12/7'
The examples we have of multiply cutting enzymes cut only four times. This protected method deals only with a string of two integers separated with a slash, e.g. '12/7'. The numbers represent the postions BEFORE the start of the recognition site, i.e. negative positions.
_companies
Title : _companies
Purpose : Defines the companies that we know about
Returns : A hash
Argument : Nothing
Comments : An internal method to define the companies that we know about
REBASE uses a code, and this converts the code to the real name
(e.g. A = Amersham Pharmacia Biotech)