| remap

## Function

Display restriction enzyme binding sites in a nucleotide sequence

## Description

remap scans one or more nucleotide sequences for recognition sites and/or cut sites for a supplied set of restriction enzymes. One or more restriction enzymes can be specified or alternatively all the enzymes in the REBASE database can be investigated. The minimum length of a recognition site to be reported must be specified. It writes an output file showing the location of the cut sites and (optionally) the recognition sites. Sites on both strands are shown by default but there are many options to control exactly what sites are reported and the format of the output file. Optionally, the translated sequence is reported. Additionally, the output file lists enzymess that cut / do not cut the sequence and which match / do not matching certain specified criteria.

## Usage

Here is a sample session with remap

This example uses only a small region of the input sequence to save space. This is run with a small test version of the restriction enzyme database and so you will probably see more enzymes when you run this.

    % remap -notran -sbeg 1 -send 60
    Display restriction enzyme binding sites in a nucleotide sequence
    Input nucleotide sequence(s): tembl:j01636
    Comma separated enzyme list [all]: taqi,bsu6i,acii,bsski
    Minimum recognition site length [4]:
    Output file [j01636.remap]:

Go to the input files for this example
Go to the output files for this example

Example 2

This is an example where all enzymes in the REBASE database are used, (but only the prototypes of the isoschizomers are reported by default). This is run with a small test version of the restriction enzyme database and so you will probably see more enzymes when you run this.

    % remap -notran -sbeg 1 -send 60
    Display restriction enzyme binding sites in a nucleotide sequence
    Input nucleotide sequence(s): tembl:j01636
    Comma separated enzyme list [all]:
    Minimum recognition site length [4]:
    Output file [j01636.remap]:

Go to the output files for this example

Example 3

This is an example where all enzymes in the REBASE database are used but the -limit qualifier is not set so that all of the enzymes are displayed and not just only the prototypes of the isoschizomers. This is run with a small test version of the restriction enzyme database and so you will probably see more enzymes when you run this.

    % remap -notran -sbeg 1 -send 60 -nolimit
    Display restriction enzyme binding sites in a nucleotide sequence
    Input nucleotide sequence(s): tembl:j01636
    Comma separated enzyme list [all]:
    Minimum recognition site length [4]:
    Output file [j01636.remap]:

Go to the output files for this example

Example 4

This shows the 'flat' format: This is run with a small test version of the restriction enzyme database and so you will probably see more enzymes when you run this.

    % remap -notran -sbeg 1 -send 60 -flat
    Display restriction enzyme binding sites in a nucleotide sequence
    Input nucleotide sequence(s): tembl:j01636
    Comma separated enzyme list [all]:
    Minimum recognition site length [4]:
    Output file [j01636.remap]:

Go to the output files for this example

## Command line arguments

       Standard (Mandatory) qualifiers:
      [-sequence]          seqall     Nucleotide sequence(s) filename and optional
                                      format, or reference (input USA)
       -enzymes            string     [all] The name 'all' reads in all enzyme
                                      names from the REBASE database. You can
                                      specify enzymes by giving their names with
                                      commas between then, such as:
                                      'HincII,hinfI,ppiI,hindiii'.
                                      The case of the names is not important. You
                                      can specify a file of enzyme names to read
                                      in by giving the name of the file holding
                                      the enzyme names with a '@' character in
                                      front of it, for example, '@enz.list'.
                                      Blank lines and lines starting with a hash
                                      character or '!' are ignored and all other
                                      lines are concatenated together with a comma
                                      character ',' and then treated as the list
                                      of enzymes to search for.
                                      An example of a file of enzyme names is:
                                      ! my enzymes
                                      HincII, ppiII
                                      ! other enzymes
                                      hindiii
                                      HinfI
                                      PpiI (Any string is accepted)
       -sitelen            integer    [4] This sets the minimum length of the
                                      restriction enzyme recognition site. Any
                                      enzymes with sites shorter than this will be
                                      ignored. (Integer from 2 to 20)
      [-outfile]           outfile    [*.remap] Output file name

       Additional (Optional) qualifiers:
       -mincuts            integer    [1] This sets the minimum number of cuts for
                                      any restriction enzyme that will be
                                      considered. Any enzymes that cut fewer times
                                      than this will be ignored. (Integer from 1
                                      to 1000)
       -maxcuts            integer    [2000000000] This sets the maximum number of
                                      cuts for any restriction enzyme that will
                                      be considered. Any enzymes that cut more
                                      times than this will be ignored. (Integer up
                                      to 2000000000)
       -single             boolean    [N] If this is set then this forces the
                                      values of the mincuts and maxcuts qualifiers
                                      to both be 1. Any other value you may have
                                      set them to will be ignored.
       -[no]blunt          boolean    [Y] This allows those enzymes which cut at
                                      the same position on the forward and reverse
                                      strands to be considered.
       -[no]sticky         boolean    [Y] This allows those enzymes which cut at
                                      different positions on the forward and
                                      reverse strands, leaving an overhang, to be
                                      considered.
       -[no]ambiguity      boolean    [Y] This allows those enzymes which have one
                                      or more 'N' ambiguity codes in their
                                      pattern to be considered
       -plasmid            boolean    [N] If this is set then this allows searches
                                      for restriction enzyme recognition site and
                                      cut postions that span the end of the
                                      sequence to be considered.
       -[no]commercial     boolean    [Y] If this is set, then only those enzymes
                                      with a commercial supplier will be searched
                                      for. This qualifier is ignored if you have
                                      specified an explicit list of enzymes to
                                      search for, rather than searching through
                                      'all' the enzymes in the REBASE database. It
                                      is assumed that, if you are asking for an
                                      explicit enzyme, then you probably know
                                      where to get it from and so all enzymes
                                      names that you have asked to be searched
                                      for, and which cut, will be reported whether
                                      or not they have a commercial supplier.
       -table              menu       [0] Genetic code to use (Values: 0
                                      (Standard); 1 (Standard (with alternative
                                      initiation codons)); 2 (Vertebrate
                                      Mitochondrial); 3 (Yeast Mitochondrial); 4
                                      (Mold, Protozoan, Coelenterate Mitochondrial
                                      and Mycoplasma/Spiroplasma); 5
                                      (Invertebrate Mitochondrial); 6 (Ciliate
                                      Macronuclear and Dasycladacean); 9
                                      (Echinoderm Mitochondrial); 10 (Euplotid
                                      Nuclear); 11 (Bacterial); 12 (Alternative
                                      Yeast Nuclear); 13 (Ascidian Mitochondrial);
                                      14 (Flatworm Mitochondrial); 15
                                      (Blepharisma Macronuclear); 16
                                      (Chlorophycean Mitochondrial); 21 (Trematode
                                      Mitochondrial); 22 (Scenedesmus obliquus);
                                      23 (Thraustochytrium Mitochondrial))
       -frame              menu       [6] This allows you to specify the frames
                                      that are translated. If you are not
                                      displaying cut sites on the reverse sense,
                                      then the reverse sense translations will not
                                      be displayed even if you have requested
                                      frames 4, 5 or 6. By default, all six frames
                                      will be displayed. (Values: 1 (1); 2 (2); 3
                                      (3); F (Forward three frames); -1 (-1); -2
                                      (-2); -3 (-3); R (Reverse three frames); 6
                                      (All six frames))
       -[no]cutlist        boolean    [Y] This produces lists in the output of the
                                      enzymes that cut, those that cut but are
                                      excluded because that cut fewer times than
                                      mincut or more times than maxcut and those
                                      enzymes that do not cut.
       -flatreformat       boolean    [N] This changes the output format to one
                                      where the recognition site is indicated by a
                                      row of '===' characters and the cut site is
                                      pointed to by a '>' character in the
                                      forward sense, or a '<' in the reverse sense
                                      strand.
       -[no]limit          boolean    [Y] This limits the reporting of enzymes to
                                      just one enzyme from each group of
                                      isoschizomers. The enzyme chosen to
                                      represent an isoschizomer group is the
                                      prototype indicated in the data file
                                      'embossre.equ', which is created by the
                                      program 'rebaseextract'. If you prefer
                                      different prototypes to be used, make a copy
                                      of embossre.equ in your home directory and
                                      edit it. If this value is set to be false
                                      then all of the input enzymes will be
                                      reported. You might like to set this to
                                      false if you are supplying an explicit set
                                      of enzymes rather than searching 'all' of
                                      them.

       Advanced (Unprompted) qualifiers:
       -[no]translation    boolean    [Y] This displays the 6-frame translations
                                      of the sequence in the output.
       -[no]reverse        boolean    [Y] This displays the cut sites and
                                      translation of the reverse sense.
       -orfminsize         integer    [If this value is left as 0 then all of the
                                      translation is shown.] This sets the minimum
                                      size of Open Reading Frames (ORFs) to
                                      display in the translations. All other
                                      translation regions are masked by changing
                                      the amino acids to '-' characters. (Integer
                                      0 or more)
       -uppercase          range      [If this is left blank, then the sequence
                                      case is left alone.] Regions to put in
                                      uppercase.
                                      If this is left blank, then the sequence
                                      case is left alone.
                                      A set of regions is specified by a set of
                                      pairs of positions.
                                      The positions are integers.
                                      They are separated by any non-digit,
                                      non-alpha character.
                                      Examples of region specifications are:
                                      24-45, 56-78
                                      1:45, 67=99;765..888
                                      1,5,8,10,23,45,57,99
       -highlight          range      [(full sequence)] Regions to colour if
                                      formatting for HTML.
                                      If this is left blank, then the sequence is
                                      left alone.
                                      A set of regions is specified by a set of
                                      pairs of positions.
                                      The positions are integers.
                                      They are followed by any valid HTML font
                                      colour.
                                      Examples of region specifications are:
                                      24-45 blue 56-78 orange
                                      1-100 green 120-156 red
                                      A file of ranges to colour (one range per
                                      line) can be specifed as '@filename'.
       -threeletter        boolean    [N] Display protein sequences in
                                      three-letter code
       -number             boolean    [N] Number the sequences
       -width              integer    [60] Width of sequence to display (Integer 1
                                      or more)
       -length             integer    [0] Line length of page (0 for indefinite)
                                      (Integer 0 or more)
       -margin             integer    [10] Margin around sequence for numbering
                                      (Integer 0 or more)
       -[no]name           boolean    [Y] Set this to be false if you do not wish
                                      to display the ID name of the sequence
       -[no]description    boolean    [Y] Set this to be false if you do not wish
                                      to display the description of the sequence
       -offset             integer    [1] Offset to start numbering the sequence
                                      from (Any integer value)
       -html               boolean    [N] Use HTML formatting

       Associated qualifiers:

       "-sequence" associated qualifiers
       -sbegin1            integer    Start of each sequence to be used
       -send1              integer    End of each sequence to be used
       -sreverse1          boolean    Reverse (if DNA)
       -sask1              boolean    Ask for begin/end/reverse
       -snucleotide1       boolean    Sequence is nucleotide
       -sprotein1          boolean    Sequence is protein
       -slower1            boolean    Make lower case
       -supper1            boolean    Make upper case
       -sformat1           string     Input sequence format
       -sdbname1           string     Database name
       -sid1               string     Entryname
       -ufo1               string     UFO features
       -fformat1           string     Features format
       -fopenfile1         string     Features file name

       "-outfile" associated qualifiers
       -odirectory2        string     Output directory

       General qualifiers:
       -auto               boolean    Turn off prompts
       -stdout             boolean    Write first file to standard output
       -filter             boolean    Read first file from standard input, write
                                      first file to standard output
       -options            boolean    Prompt for standard and additional values
       -debug              boolean    Write debug output to program.dbg
       -verbose            boolean    Report some/full command line options
       -help               boolean    Report command line options. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose
       -warning            boolean    Report warnings
       -error              boolean    Report errors
       -fatal              boolean    Report fatal errors
       -die                boolean    Report dying program messages

Standard (Mandatory) qualifiers | Allowed values | Default
--- | --- | ---
[-sequence] (Parameter 1) | Nucleotide sequence(s) filename and optional format, or reference (input USA) | Readable sequence(s) | Required
-enzymes | The name 'all' reads in all enzyme names from the REBASE database. You can specify enzymes by giving their names with commas between then, such as: 'HincII,hinfI,ppiI,hindiii'. The case of the names is not important. You can specify a file of enzyme names to read in by giving the name of the file holding the enzyme names with a '@' character in front of it, for example, '@enz.list'. Blank lines and lines starting with a hash character or '!' are ignored and all other lines are concatenated together with a comma character ',' and then treated as the list of enzymes to search for. An example of a file of enzyme names is: ! my enzymes HincII, ppiII ! other enzymes hindiii HinfI PpiI | Any string is accepted | all
-sitelen | This sets the minimum length of the restriction enzyme recognition site. Any enzymes with sites shorter than this will be ignored. | Integer from 2 to 20 | 4
[-outfile] (Parameter 2) | Output file name | Output file | <*>.remap
Additional (Optional) qualifiers | Allowed values | Default
-mincuts | This sets the minimum number of cuts for any restriction enzyme that will be considered. Any enzymes that cut fewer times than this will be ignored. | Integer from 1 to 1000 | 1
-maxcuts | This sets the maximum number of cuts for any restriction enzyme that will be considered. Any enzymes that cut more times than this will be ignored. | Integer up to 2000000000 | 2000000000
-single | If this is set then this forces the values of the mincuts and maxcuts qualifiers to both be 1. Any other value you may have set them to will be ignored. | Boolean value Yes/No | No
-[no]blunt | This allows those enzymes which cut at the same position on the forward and reverse strands to be considered. | Boolean value Yes/No | Yes
-[no]sticky | This allows those enzymes which cut at different positions on the forward and reverse strands, leaving an overhang, to be considered. | Boolean value Yes/No | Yes
-[no]ambiguity | This allows those enzymes which have one or more 'N' ambiguity codes in their pattern to be considered | Boolean value Yes/No | Yes
-plasmid | If this is set then this allows searches for restriction enzyme recognition site and cut postions that span the end of the sequence to be considered. | Boolean value Yes/No | No
-[no]commercial | If this is set, then only those enzymes with a commercial supplier will be searched for. This qualifier is ignored if you have specified an explicit list of enzymes to search for, rather than searching through 'all' the enzymes in the REBASE database. It is assumed that, if you are asking for an explicit enzyme, then you probably know where to get it from and so all enzymes names that you have asked to be searched for, and which cut, will be reported whether or not they have a commercial supplier. | Boolean value Yes/No | Yes
-table | Genetic code to use |
0 | (Standard)
1 | (Standard (with alternative initiation codons))
2 | (Vertebrate Mitochondrial)
3 | (Yeast Mitochondrial)
4 | (Mold, Protozoan, Coelenterate Mitochondrial and Mycoplasma/Spiroplasma)
5 | (Invertebrate Mitochondrial)
6 | (Ciliate Macronuclear and Dasycladacean)
9 | (Echinoderm Mitochondrial)
10 | (Euplotid Nuclear)
11 | (Bacterial)
12 | (Alternative Yeast Nuclear)
13 | (Ascidian Mitochondrial)
14 | (Flatworm Mitochondrial)
15 | (Blepharisma Macronuclear)
16 | (Chlorophycean Mitochondrial)
21 | (Trematode Mitochondrial)
22 | (Scenedesmus obliquus)
23 | (Thraustochytrium Mitochondrial)
| 0
-frame | This allows you to specify the frames that are translated. If you are not displaying cut sites on the reverse sense, then the reverse sense translations will not be displayed even if you have requested frames 4, 5 or 6. By default, all six frames will be displayed. |
1 | (1)
2 | (2)
3 | (3)
F | (Forward three frames)
-1 | (-1)
-2 | (-2)
-3 | (-3)
R | (Reverse three frames)
6 | (All six frames)
| 6
-[no]cutlist | This produces lists in the output of the enzymes that cut, those that cut but are excluded because that cut fewer times than mincut or more times than maxcut and those enzymes that do not cut. | Boolean value Yes/No | Yes
-flatreformat | This changes the output format to one where the recognition site is indicated by a row of '===' characters and the cut site is pointed to by a '>' character in the forward sense, or a '<' in the reverse sense strand. | Boolean value Yes/No | No
-[no]limit | This limits the reporting of enzymes to just one enzyme from each group of isoschizomers. The enzyme chosen to represent an isoschizomer group is the prototype indicated in the data file 'embossre.equ', which is created by the program 'rebaseextract'. If you prefer different prototypes to be used, make a copy of embossre.equ in your home directory and edit it. If this value is set to be false then all of the input enzymes will be reported. You might like to set this to false if you are supplying an explicit set of enzymes rather than searching 'all' of them. | Boolean value Yes/No | Yes
Advanced (Unprompted) qualifiers | Allowed values | Default
-[no]translation | This displays the 6-frame translations of the sequence in the output. | Boolean value Yes/No | Yes
-[no]reverse | This displays the cut sites and translation of the reverse sense. | Boolean value Yes/No | Yes
-orfminsize | This sets the minimum size of Open Reading Frames (ORFs) to display in the translations. All other translation regions are masked by changing the amino acids to '-' characters. | Integer 0 or more | If this value is left as 0 then all of the translation is shown.
-uppercase | Regions to put in uppercase. If this is left blank, then the sequence case is left alone. A set of regions is specified by a set of pairs of positions. The positions are integers. They are separated by any non-digit, non-alpha character. Examples of region specifications are: 24-45, 56-78 1:45, 67=99;765..888 1,5,8,10,23,45,57,99 | Sequence range | If this is left blank, then the sequence case is left alone.
-highlight | Regions to colour if formatting for HTML. If this is left blank, then the sequence is left alone. A set of regions is specified by a set of pairs of positions. The positions are integers. They are followed by any valid HTML font colour. Examples of region specifications are: 24-45 blue 56-78 orange 1-100 green 120-156 red A file of ranges to colour (one range per line) can be specifed as '@filename'. | Sequence range | full sequence
-threeletter | Display protein sequences in three-letter code | Boolean value Yes/No | No
-number | Number the sequences | Boolean value Yes/No | No
-width | Width of sequence to display | Integer 1 or more | 60
-length | Line length of page (0 for indefinite) | Integer 0 or more | 0
-margin | Margin around sequence for numbering | Integer 0 or more | 10
-[no]name | Set this to be false if you do not wish to display the ID name of the sequence | Boolean value Yes/No | Yes
-[no]description | Set this to be false if you do not wish to display the description of the sequence | Boolean value Yes/No | Yes
-offset | Offset to start numbering the sequence from | Any integer value | 1
-html | Use HTML formatting | Boolean value Yes/No | No

## Input file format

### Input files for usage example

'tembl:j01636' is a sequence entry in the example nucleic acid database 'tembl'

### Database entry: tembl:j01636

    ID   J01636; SV 1; linear; genomic DNA; STD; PRO; 7477 BP.
    XX
    AC   J01636; J01637; K01483; K01793;
    XX
    DT   30-NOV-1990 (Rel. 26, Created)
    DT   09-SEP-2004 (Rel. 81, Last updated, Version 8)
    XX
    DE   E.coli lactose operon with lacI, lacZ, lacY and lacA genes.
    XX
    KW   acetyltransferase; beta-D-galactosidase; galactosidase; lac operon;
    KW   lac repressor protein; lacA gene; lacI gene; lactose permease; lacY gene;
    KW   lacZ gene; mutagenesis; palindrome; promoter region;
    KW   thiogalactoside acetyltransferase.
    XX
    OS   Escherichia coli
    OC   Bacteria; Proteobacteria; Gammaproteobacteria; Enterobacteriales;
    OC   Enterobacteriaceae; Escherichia.
    XX
    RN   [1]
    RP   1243-1266
    RX   PUBMED; 4587255.
    RA   Gilbert W., Maxam A.;
    RT   "The nucleotide sequence of the lac operator";
    RL   Proc. Natl. Acad. Sci. U.S.A. 70(12):3581-3584(1973).
    XX
    RN   [2]
    RP   1246-1308
    RX   PUBMED; 4587256.
    RA   Maizels N.M.;
    RT   "The nucleotide sequence of the lactose messenger ribonucleic acid
    RT   transcribed from the UV5 promoter mutant of Escherichia coli";
    RL   Proc. Natl. Acad. Sci. U.S.A. 70(12):3585-3589(1973).
    XX
    RN   [3]
    RX   PUBMED; 4598642.
    RA   Gilbert W., Maizels N., Maxam A.;
    RT   "Sequences of controlling regions of the lactose operon";
    RL   Cold Spring Harb. Symp. Quant. Biol. 38:845-855(1974).
    XX
    RN   [4]
    RA   Gilbert W., Gralla J., Majors A.J., Maxam A.;
    RT   "Lactose operator sequences and the action of lac repressor";
    RL   (in) Sund H., Blauer G. (Eds.);
    RL   PROTEIN-LIGAND INTERACTIONS:193-207;
    RL   Walter de Gruyter, New York (1975)
    XX
    RN   [5]
    RP   1146-1282
    RX   PUBMED; 1088926.
    RA   Dickson R.C., Abelson J.N., Barnes W.M., Reznikoff W.S.;

      [Part of this file has been deleted for brevity]

         cgatttggct acatgacatc aaccatatca gcaaaagtga tacgggtatt atttttgccg      4560
         ctatttctct gttctcgcta ttattccaac cgctgtttgg tctgctttct gacaaactcg      4620
         ggctgcgcaa atacctgctg tggattatta ccggcatgtt agtgatgttt gcgccgttct      4680
         ttatttttat cttcgggcca ctgttacaat acaacatttt agtaggatcg attgttggtg      4740
         gtatttatct aggcttttgt tttaacgccg gtgcgccagc agtagaggca tttattgaga      4800
         aagtcagccg tcgcagtaat ttcgaatttg gtcgcgcgcg gatgtttggc tgtgttggct      4860
         gggcgctgtg tgcctcgatt gtcggcatca tgttcaccat caataatcag tttgttttct      4920
         ggctgggctc tggctgtgca ctcatcctcg ccgttttact ctttttcgcc aaaacggatg      4980
         cgccctcttc tgccacggtt gccaatgcgg taggtgccaa ccattcggca tttagcctta      5040
         agctggcact ggaactgttc agacagccaa aactgtggtt tttgtcactg tatgttattg      5100
         gcgtttcctg cacctacgat gtttttgacc aacagtttgc taatttcttt acttcgttct      5160
         ttgctaccgg tgaacagggt acgcgggtat ttggctacgt aacgacaatg ggcgaattac      5220
         ttaacgcctc gattatgttc tttgcgccac tgatcattaa tcgcatcggt gggaaaaacg      5280
         ccctgctgct ggctggcact attatgtctg tacgtattat tggctcatcg ttcgccacct      5340
         cagcgctgga agtggttatt ctgaaaacgc tgcatatgtt tgaagtaccg ttcctgctgg      5400
         tgggctgctt taaatatatt accagccagt ttgaagtgcg tttttcagcg acgatttatc      5460
         tggtctgttt ctgcttcttt aagcaactgg cgatgatttt tatgtctgta ctggcgggca      5520
         atatgtatga aagcatcggt ttccagggcg cttatctggt gctgggtctg gtggcgctgg      5580
         gcttcacctt aatttccgtg ttcacgctta gcggccccgg cccgctttcc ctgctgcgtc      5640
         gtcaggtgaa tgaagtcgct taagcaatca atgtcggatg cggcgcgacg cttatccgac      5700
         caacatatca taacggagtg atcgcattga acatgccaat gaccgaaaga ataagagcag      5760
         gcaagctatt taccgatatg tgcgaaggct taccggaaaa aagacttcgt gggaaaacgt      5820
         taatgtatga gtttaatcac tcgcatccat cagaagttga aaaaagagaa agcctgatta      5880
         aagaaatgtt tgccacggta ggggaaaacg cctgggtaga accgcctgtc tatttctctt      5940
         acggttccaa catccatata ggccgcaatt tttatgcaaa tttcaattta accattgtcg      6000
         atgactacac ggtaacaatc ggtgataacg tactgattgc acccaacgtt actctttccg      6060
         ttacgggaca ccctgtacac catgaattga gaaaaaacgg cgagatgtac tcttttccga      6120
         taacgattgg caataacgtc tggatcggaa gtcatgtggt tattaatcca ggcgtcacca      6180
         tcggggataa ttctgttatt ggcgcgggta gtatcgtcac aaaagacatt ccaccaaacg      6240
         tcgtggcggc tggcgttcct tgtcgggtta ttcgcgaaat aaacgaccgg gataagcact      6300
         attatttcaa agattataaa gttgaatcgt cagtttaaat tataaaaatt gcctgatacg      6360
         ctgcgcttat caggcctaca agttcagcga tctacattag ccgcatccgg catgaacaaa      6420
         gcgcaggaac aagcgtcgca tcatgcctct ttgacccaca gctgcggaaa acgtactggt      6480
         gcaaaacgca gggttatgat catcagccca acgacgcaca gcgcatgaaa tgcccagtcc      6540
         atcaggtaat tgccgctgat actacgcagc acgccagaaa accacggggc aagcccggcg      6600
         atgataaaac cgattccctg cataaacgcc accagcttgc cagcaatagc cggttgcaca      6660
         gagtgatcga gcgccagcag caaacagagc ggaaacgcgc cgcccagacc taacccacac      6720
         accatcgccc acaataccgg caattgcatc ggcagccaga taaagccgca gaaccccacc      6780
         agttgtaaca ccagcgccag cattaacagt ttgcgccgat cctgatggcg agccatagca      6840
         ggcatcagca aagctcctgc ggcttgccca agcgtcatca atgccagtaa ggaaccgctg      6900
         tactgcgcgc tggcaccaat ctcaatatag aaagcgggta accaggcaat caggctggcg      6960
         taaccgccgt taatcagacc gaagtaaaca cccagcgtcc acgcgcgggg agtgaatacc      7020
         acgcgaaccg gagtggttgt tgtcttgtgg gaagaggcga cctcgcgggc gctttgccac      7080
         caccaggcaa agagcgcaac aacggcaggc agcgccacca ggcgagtgtt tgataccagg      7140
         tttcgctatg ttgaactaac cagggcgtta tggcggcacc aagcccaccg ccgcccatca      7200
         gagccgcgga ccacagcccc atcaccagtg gcgtgcgctg ctgaaaccgc cgtttaatca      7260
         ccgaagcatc accgcctgaa tgatgccgat ccccacccca ccaagcagtg cgctgctaag      7320
         cagcagcgca ctttgcgggt aaagctcacg catcaatgca ccgacggcaa tcagcaacag      7380
         actgatggcg acactgcgac gttcgctgac atgctgatga agccagcttc cggccagcgc      7440
         cagcccgccc atggtaacca ccggcagagc ggtcgac                               7477
    //

You can specifiy a file of ranges to display in uppercase by giving the '-uppercase' qualifier the value '@' followed by the name of the file containing the ranges. (eg: '-upper @myfile').

The format of the range file is:

- Comment lines start with '#' in the first column.
- Comment lines and blank lines are ignored.
- The line may start with white-space.
- There are two positive (integer) numbers per line separated by one or more space or TAB characters.
- The second number must be greater or equal to the first number.
- There can be optional text after the two numbers to annotate the line.
- White-space before or after the text is removed.

An example range file is:

    # this is my set of ranges
    12   23
     4   5       this is like 12-23, but smaller
    67   10348   interesting region

You can specifiy a file of ranges to highlight in a different colour when outputting in HTML format (using the '-html' qualifier) by giving the '-highlight' qualifier the value '@' followed by the name of the file containing the ranges. (eg: '-highlight @myfile').

The format of this file is very similar to the format of the above uppercase range file, except that the text after the start and end positions is used as the HTML colour name. This colour name is used 'as is' when specifying the colour in HTML in a '<FONT COLOR=xxx>' construct, (where 'xxx' is the name of the colour).

The standard names of HTML font colours are given in:
http://http://www.w3.org/TR/REC-html40/types.html and http://www.ausmall.com.au/freegraf/ncolour2.htm and http://mindprod.com/htmlcolours.html (amongst other places).

An example highlight range file is:

    # this is my set of ranges
    12   23		red
     4   5		darkturquoise
    67   10348	#FFE4E1

## Output file format

### Output files for usage example

### File: j01636.remap

    J01636
    E.coli lactose operon with lacI, lacZ, lacY and lacA genes.

                                                            BssKI
                     TaqI                 AciI              Ksp632I
                     \                    \                 \
              gacaccatcgaatggcgcaaaacctttcgcggtatggcatgatagcgcccggaagagagt
                       10        20        30        40        50        60
              ----:----|----:----|----:----|----:----|----:----|----:----|
              ctgtggtagcttaccgcgttttggaaagcgccataccgtactatcgcgggccttctctca
                       /                    /                  / /
                       TaqI                 AciI               | BssKI
                                                               Ksp632I

    # Enzymes that cut  Frequency	Isoschizomers
          AciI	    1
         BssKI	    1
       Ksp632I	    1	Bsu6I
          TaqI	    1

    # Enzymes which cut less frequently than the MINCUTS criterion
    # Enzymes < MINCUTS Frequency	Isoschizomers

    # Enzymes which cut more frequently than the MAXCUTS criterion
    # Enzymes > MAXCUTS Frequency	Isoschizomers

    # Enzymes that do not cut

    # No. of cutting enzymes which do not match the
    # SITELEN, BLUNT, STICKY, COMMERCIAL, AMBIGUOUS citeria

    0

### Output files for usage example 2

### File: j01636.remap

    J01636
    E.coli lactose operon with lacI, lacZ, lacY and lacA genes.

                                                          Hin6I
                     TaqI                                 | HhaI
                     |  BsiYI                             | BssKI
                     |  |   Hin6I                         | Ksp632I
                     |  |   | HhaI        AciI            | | HpaII
                     \  \   \ \           \               \ \ \
              gacaccatcgaatggcgcaaaacctttcgcggtatggcatgatagcgcccggaagagagt
                       10        20        30        40        50        60
              ----:----|----:----|----:----|----:----|----:----|----:----|
              ctgtggtagcttaccgcgttttggaaagcgccataccgtactatcgcgggccttctctca
                     / /    / /             /             / /  ///
                     | TaqI | Hin6I         AciI          | |  ||BssKI
                     BsiYI  HhaI                          | |  |HpaII
                                                          | |  Ksp632I
                                                          | Hin6I
                                                          HhaI

    # Enzymes that cut  Frequency	Isoschizomers
          AciI	    1
         BsiYI	    1	Bsc4I
         BssKI	    1
          HhaI	    2
         Hin6I	    2	HinP1I,HspAI
         HpaII	    1	BsiSI
       Ksp632I	    1	Bsu6I
          TaqI	    1

    # Enzymes which cut less frequently than the MINCUTS criterion
    # Enzymes < MINCUTS Frequency	Isoschizomers

    # Enzymes which cut more frequently than the MAXCUTS criterion
    # Enzymes > MAXCUTS Frequency	Isoschizomers

    # Enzymes that do not cut

    AclI      BamHI     BceAI     BseYI     BsrI      ClaI      EcoRI     EcoRII
    HaeIII    Hin4I     HindII    HindIII   KpnI      MaeII     NotI

    # No. of cutting enzymes which do not match the
    # SITELEN, BLUNT, STICKY, COMMERCIAL, AMBIGUOUS citeria

    0

### Output files for usage example 3

### File: j01636.remap

    J01636
    E.coli lactose operon with lacI, lacZ, lacY and lacA genes.

                                                          HspAI
                                                          Hin6I
                     TaqI                                 HinP1I
                     |  BsiYI                             | HhaI
                     |  Bsc4I                             | Bsu6I
                     |  |   HspAI                         | BssKI
                     |  |   Hin6I                         | Ksp632I
                     |  |   HinP1I                        | | HpaII
                     |  |   | HhaI        AciI            | | BsiSI
                     \  \   \ \           \               \ \ \
              gacaccatcgaatggcgcaaaacctttcgcggtatggcatgatagcgcccggaagagagt
                       10        20        30        40        50        60
              ----:----|----:----|----:----|----:----|----:----|----:----|
              ctgtggtagcttaccgcgttttggaaagcgccataccgtactatcgcgggccttctctca
                     / /    / /             /             / /  ///
                     | TaqI | HinP1I        AciI          | |  ||BssKI
                     Bsc4I  | Hin6I                       | |  |BsiSI
                     BsiYI  | HspAI                       | |  |HpaII
                            HhaI                          | |  Ksp632I
                                                          | |  Bsu6I
                                                          | HinP1I
                                                          | Hin6I
                                                          | HspAI
                                                          HhaI

    # Enzymes that cut  Frequency
          AciI	    1
         Bsc4I	    1
         BsiSI	    1
         BsiYI	    1
         BssKI	    1
         Bsu6I	    1
          HhaI	    2
         Hin6I	    2
        HinP1I	    2
         HpaII	    1
         HspAI	    2
       Ksp632I	    1
          TaqI	    1

    # Enzymes which cut less frequently than the MINCUTS criterion
    # Enzymes < MINCUTS Frequency

    # Enzymes which cut more frequently than the MAXCUTS criterion
    # Enzymes > MAXCUTS Frequency

    # Enzymes that do not cut

    AclI      BamHI     BceAI     Bse1I     BseYI     BshI      BsrI      ClaI
    EcoRI     EcoRII    HaeIII    Hin4I     HindII    HindIII   HpyCH4IV  KpnI
    MaeII     NotI

    # No. of cutting enzymes which do not match the
    # SITELEN, BLUNT, STICKY, COMMERCIAL, AMBIGUOUS citeria

    0

### Output files for usage example 4

### File: j01636.remap

    J01636
    E.coli lactose operon with lacI, lacZ, lacY and lacA genes.

                                                                      Ksp632I
                                                            >.........====
                                                              HpaII
                                                              >===
                            HhaI                             BssKI
                            ==>=                            >=====
                     TaqI   Hin6I                         HhaI
                     >===   >===                          ==>=
                  BsiYI                      AciI         Hin6I
                  ======>====             >..====         >===
              gacaccatcgaatggcgcaaaacctttcgcggtatggcatgatagcgcccggaagagagt
                       10        20        30        40        50        60
              ----:----|----:----|----:----|----:----|----:----|----:----|
              ctgtggtagcttaccgcgttttggaaagcgccataccgtactatcgcgggccttctctca
                  ====<======                <===         ===<
                  BsiYI                      AciI         Hin6I
                     ===<   ===<                          =<==  <.....====
                     TaqI   Hin6I                         HhaI        Ksp632I
                            =<==                             =====<
                            HhaI                             BssKI
                                                              ===<
                                                              HpaII

    # Enzymes that cut  Frequency	Isoschizomers
          AciI	    1
         BsiYI	    1	Bsc4I
         BssKI	    1
          HhaI	    2
         Hin6I	    2	HinP1I,HspAI
         HpaII	    1	BsiSI
       Ksp632I	    1	Bsu6I
          TaqI	    1

    # Enzymes which cut less frequently than the MINCUTS criterion
    # Enzymes < MINCUTS Frequency	Isoschizomers

    # Enzymes which cut more frequently than the MAXCUTS criterion
    # Enzymes > MAXCUTS Frequency	Isoschizomers

    # Enzymes that do not cut

    AclI      BamHI     BceAI     BseYI     BsrI      ClaI      EcoRI     EcoRII
    HaeIII    Hin4I     HindII    HindIII   KpnI      MaeII     NotI

    # No. of cutting enzymes which do not match the
    # SITELEN, BLUNT, STICKY, COMMERCIAL, AMBIGUOUS citeria

    0

The name of the sequence is displayed, followed by the description of the sequence.

The formatted display of cut sites on the sequence follows, with the six-frame translation below it. The cut sites are indicated by a slash character '\' that points to the poition between the nucleotides where the cuts occur. Cuts by many enzymes at the same position are indicated by stacking the enzyme names on top of each other.

At the end the section header 'Enzymes that cut' is displayed followed by a list of the enzymes that cut the specified sequence and the number of times that they cut. For each enzyme that cuts, a list of isoschizomers of that enzyme (sharing the same recognition site pattern and cut sites) is given.

This is followed by lists of the enzymes that do cut, but which cut less often than the '-mincut' qualifier or more often than the '-maxcut' qualifier.

Any of the isoschizomers that are excluded from cutting, (either through restrictions such as the permitted number of cuts, blunt cutters only, single cutters only etc. or because their name has not been given in the input list of enzymes), will not be listed.

Then a list is displayed of the enzymes whose names were input and which match the other criteria ('-sitelen', '-blunt', '-sticky', '-ambiguity' or '-commercial') but which do not cut.

Finally the number of enzymes that were rejected from consideration because they do not match the '-sitelen', '-blunt', '-sticky', '-ambiguity' or '-commercial' criteria is displayed.

The '-flatreformat' qualifier changes the display to emphasise the recognition site of the restriction enzyme, which is indicated by a row of '=' characters. The cut site if pointed to by a '>' or '<' character and if the cut site is not within or imemdiately adjacent to the recognition site, they are linked by a row of '.' characters.

The name of the enzyme is displayed above (or below when the reverse sense site if displayed) the recognition site. The name of the enzyme is also displayed above the cut site if this occurs on a different display line to the recognition site (i.e. if it wraps onto the next line of sequence).

## Data files

EMBOSS data files are distributed with the application and stored in the standard EMBOSS data directory, which is defined by the EMBOSS environment variable EMBOSS_DATA.

To see the available EMBOSS data files, run:

    % embossdata -showall

To fetch one of the data files (for example 'Exxx.dat') into your current directory for you to inspect or modify, run:

    % embossdata -fetch -file Exxx.dat

Users can provide their own data files in their own directories. Project specific files can be put in the current directory, or for tidier directory listings in a subdirectory called ".embossdata". Files for all EMBOSS runs can be put in the user's home directory, or again in a subdirectory called ".embossdata".

The directories are searched in the following order:

- . (your current directory)
- .embossdata (under your current directory)
- ~/ (your home directory)
- ~/.embossdata

The EMBOSS REBASE restriction enzyme data files are stored in directory 'data/REBASE/*' under the EMBOSS installation directory.

These files must first be set up using the program 'rebaseextract'. Running 'rebaseextract' may be the job of your system manager.

The data files are stored in the REBASE directory of the standard EMBOSS data directory. The names are:

- embossre.enz Cleavage information
- embossre.ref Reference/methylation information
- embossre.sup Supplier information

The column information is described at the top of the data files

The reported enzyme from any one group of isoschizomers (the prototype) is specified in the REBASE database and the information is held in the data file 'embossre.equ'. You may edit this file to set your own preferred prototype, if you wish.

The format of the file "embossre.equ" is
Enzyme-name Prototype-name

i.e. two columns of enzyme names separated by a space. The first name of the pair of enzymes is the name that is not preferred and the second is the preferred (prototype) name.

## Notes

The Restriction Enzyme database (REBASE) is a collection of information about restriction enzymes and related proteins. It contains published and unpublished references, recognition and cleavage sites, isoschizomers, commercial availability, methylation sensitivity, crystal and sequence data. DNA methyltransferases, homing endonucleases, nicking enzymes, specificity subunits and control proteins are also included. Most recently, putative DNA methyltransferases and restriction enzymes, as predicted from analysis of genomic sequences, are also listed.

The home page of REBASE is: http://rebase.neb.com/

Where the translation is given in the output file, the genetic code and one or more frames for translation may be specified. The `-no[reverse]` option specifies whether the translation (and cut and recognition sites) are shown for the reverse sense strand.

By default, only one enzyme of any group of isoschizomers (enzymes that have the same recognition site and cut positions) is reported. This behaviour can be changed by specifying `-nolimit`, in which case all isoschizomers are reported. The default behaviour uses the representative enzyme of an isoschizomer group (the prototype) which is specified in the EMBOSS data file `embossre.equ`. This file is generated from the REBASE database by running rebaseextract. You may edit this file to set your own preferred prototype, if you wish.

As well as the display of where enzymes cut in the sequence, remap displays:

- The list of enzymes that cut the sequence and match the required criteria.
- The list of enzymes that cut the sequence and fail the MINCUTS criteria.
- The list of enzymes that cut the sequence and fail the MAXCUTS criteria.
- The list of enzymes that do not cut the sequence but which match all the required criteria.
- The number of enzymes that cut the sequence and fail the SITELEN, BLUNT, STICKY, COMMERCIAL, AMBIGUOUS criteria.

## References

None.

## Warnings

remap uses the EMBOSS REBASE restriction enzyme data files stored in directory `data/REBASE/*` under the EMBOSS installation directory. These files must first be set up using the program rebaseextract. Running rebaseextract may be the job of your system manager.

## Diagnostic Error Messages

None.

## Exit status

It always exits with status 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
abiview | Display the trace in an ABI sequencer file
backtranambig | Back-translate a protein sequence to ambiguous nucleotide sequence
backtranseq | Back-translate a protein sequence to a nucleotide sequence
cirdna | Draws circular maps of DNA constructs
coderet | Extract CDS, mRNA and translations from feature tables
lindna | Draws linear maps of DNA constructs
pepnet | Draw a helical net for a protein sequence
pepwheel | Draw a helical wheel diagram for a protein sequence
plotorf | Plot potential open reading frames in a nucleotide sequence
prettyplot | Draw a sequence alignment with pretty formatting
prettyseq | Write a nucleotide sequence and its translation to file
recoder | Find restriction sites to remove (mutate) with no translation change
redata | Retrieve information from REBASE restriction enzyme database
restover | Find restriction enzymes producing a specific overhang
restrict | Report restriction enzyme cleavage sites in a nucleotide sequence
seealso | Finds programs with similar function to a specified program
showalign | Display a multiple sequence alignment in pretty format
showdb | Displays information on configured databases
showfeat | Display features of a sequence in pretty format
showorf | Display a nucleotide sequence and translation in pretty format
showseq | Displays sequences with features in pretty format
silent | Find restriction sites to insert (mutate) with no translation change
sixpack | Display a DNA sequence with 6-frame translation and ORFs
textsearch | Search the textual description of sequence(s)
transeq | Translate nucleic acid sequences

## Author(s)

Gary Williams (gwilliam © rfcgr.mrc.ac.uk)
MRC Rosalind Franklin Centre for Genomics Research Wellcome Trust Genome Campus, Hinxton, Cambridge, CB10 1SB, UK

## History

Written Spring 2000

Changed 7 Dec 2000 - GWW - to declare isoschizomers that cut

## Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

## Comments

None