Package Bio :: Package Restriction :: Module Restriction
[hide private]
[frames] | no frames]

Module Restriction

source code

Notes about the diverses class of the restriction enzyme implementation.

    RestrictionType is the type of all restriction enzymes.
----------------------------------------------------------------------------
    AbstractCut implements some methods that are common to all enzymes.
----------------------------------------------------------------------------
    NoCut, OneCut,TwoCuts   represent the number of double strand cuts
                            produced by the enzyme.
                            they correspond to the 4th field of the rebase
                            record emboss_e.NNN.
            0->NoCut    : the enzyme is not characterised.
            2->OneCut   : the enzyme produce one double strand cut.
            4->TwoCuts  : two double strand cuts.
----------------------------------------------------------------------------
    Meth_Dep, Meth_Undep    represent the methylation susceptibility to
                            the enzyme.
                            Not implemented yet.
----------------------------------------------------------------------------
    Palindromic,            if the site is palindromic or not.
    NotPalindromic          allow some optimisations of the code.
                            No need to check the reverse strand
                            with palindromic sites.
----------------------------------------------------------------------------                                    
    Unknown, Blunt,         represent the overhang.
    Ov5, Ov3                Unknown is here for symetry reasons and
                            correspond to enzymes that are not characterised
                            in rebase.
----------------------------------------------------------------------------
    Defined, Ambiguous,     represent the sequence of the overhang.
    NotDefined             
                            NotDefined is for enzymes not characterised in
                            rebase.
                            
                            Defined correspond to enzymes that display a
                            constant overhang whatever the sequence.
                            ex : EcoRI. G^AATTC -> overhang :AATT
                                        CTTAA^G

                            Ambiguous : the overhang varies with the
                            sequence restricted.
                            Typically enzymes which cut outside their
                            restriction site or (but not always)
                            inside an ambiguous site.
                            ex :
                            AcuI CTGAAG(22/20)  -> overhang : NN
                            AasI GACNNN^NNNGTC  -> overhang : NN
                                 CTGN^NNNNNCAG

        note : these 3 classes refers to the overhang not the site.
           So the enzyme ApoI (RAATTY) is defined even if its restriction
           site is ambiguous.
                            
                ApoI R^AATTY -> overhang : AATT -> Defined
                     YTTAA^R
           Accordingly, blunt enzymes are always Defined even
           when they cut outside their restriction site.
----------------------------------------------------------------------------
    Not_available,          as found in rebase file emboss_r.NNN files.
    Commercially_available
                            allow the selection of the enzymes according to
                            their suppliers to reduce the quantity
                            of results.
                            Also will allow the implementation of buffer
                            compatibility tables. Not implemented yet.

                            the list of suppliers is extracted from
                            emboss_s.NNN
----------------------------------------------------------------------------
    

Classes [hide private]
  FormattedSeq
FormattedSeq(seq, [linear=True])-> new FormattedSeq.
  RestrictionType
RestrictionType.
  AbstractCut
Implement the methods that are common to all restriction enzymes.
  NoCut
Implement the methods specific to the enzymes that do not cut.
  OneCut
Implement the methods specific to the enzymes that cut the DNA only once
  TwoCuts
Implement the methods specific to the enzymes that cut the DNA twice
  Meth_Dep
Implement the information about methylation.
  Meth_Undep
Implement informations about methylation sensitibility.
  Palindromic
Implement the methods specific to the enzymes which are palindromic
  NonPalindromic
Implement the methods specific to the enzymes which are not palindromic
  Unknown
Implement the methods specific to the enzymes for which the overhang is unknown.
  Blunt
Implement the methods specific to the enzymes for which the overhang is blunt.
  Ov5
Implement the methods specific to the enzymes for which the overhang is recessed in 3'.
  Ov3
Implement the methods specific to the enzymes for which the overhang is recessed in 5'.
  Defined
Implement the methods specific to the enzymes for which the overhang and the cut are not variable.
  Ambiguous
Implement the methods specific to the enzymes for which the overhang is variable.
  NotDefined
Implement the methods specific to the enzymes for which the overhang is not characterised.
  Commercially_available
Implement the methods specific to the enzymes which are commercially available.
  Not_available
Implement the methods specific to the enzymes which are not commercially available.
  RestrictionBatch
  Analysis
Variables [hide private]
  re
  Set
  itertools
  Seq
  MutableSeq
  IUPAC
  enzymedict
  typedict
  suppliers_dict
  PrintFormat
  check_bases
  matching = {'A': 'ARWMHVDN', 'C': 'CYSMHBVN', 'G': 'GRSKBVDN',...
  DNA = Seq
  CommOnly = RestrictionBatch()
  NonComm = RestrictionBatch()
  AllEnzymes = CommOnly | NonComm
Variables Details [hide private]

matching

Value:
{'A': 'ARWMHVDN', 'C': 'CYSMHBVN', 'G': 'GRSKBVDN', 'T': 'TYWKHBDN', '\
R': 'ABDGHKMNSRWV', 'Y': 'CBDHKMNSTWVY', 'W': 'ABDHKMNRTWVY', 'S': 'CB\
DGHKMNSRVY', 'M': 'ACBDHMNSRWVY', 'K': 'BDGHKNSRTWVY', 'H': 'ACBDHKMNS\
RTWVY', 'B': 'CBDGHKMNSRTWVY', 'V': 'ACBDGHKMNSRWVY', 'D': 'ABDGHKMNSR\
TWVY', 'N': 'ACBDGHKMNSRTWVY'}