EMBOSS: recoder

| recoder

## Wiki

The master copies of EMBOSS documentation are available at http://emboss.open-bio.org/wiki/Appdocs on the EMBOSS Wiki.

Please help by correcting and extending the Wiki pages.

## Function

Find restriction sites to remove (mutate) with no translation change

## Description

recoder finds restriction enzyme sites in a nucleotide sequence which can be removed without changing the translation. recoder scans a nucleotide sequence for restriction sites for a supplied set of restriction enzymes. It writes a standard EMBOSS report of single base positions which, when mutated, remove the restriction site whilst maintaining the same translation in frame 1 of the input sequence. One or more restriction enzymes can be specified or alternatively all the enzymes in the REBASE database can be investigated. Optionally, the untranslated and translated sequence may be reported.

## Usage

Here is a sample session with recoder

    % recoder
    Find restriction sites to remove (mutate) with no translation change
    Input nucleotide sequence: tembl:x65923
    Comma separated enzyme list [all]: EcoRII
    Output report [x65923.recoder]:

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

## Command line arguments

    Find restriction sites to remove (mutate) with no translation change
    Version: EMBOSS:6.5.6.0

       Standard (Mandatory) qualifiers:
      [-sequence]          sequence   Nucleotide sequence filename and optional
                                      format, or reference (input USA)
       -enzymes            string     [all] Comma separated enzyme list (Any
                                      string)
      [-outfile]           report     [*.recoder] Output report file name (default
                                      -rformat table)

       Additional (Optional) qualifiers: (none)
       Advanced (Unprompted) qualifiers:
       -sshow              boolean    [N] Display untranslated sequence
       -tshow              boolean    [N] Display translated sequence

       Associated qualifiers:

       "-sequence" associated qualifiers
       -sbegin1            integer    Start of the sequence to be used
       -send1              integer    End of the 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
       -scircular1         boolean    Sequence is circular
       -sformat1           string     Input sequence format
       -iquery1            string     Input query fields or ID list
       -ioffset1           integer    Input start position offset
       -sdbname1           string     Database name
       -sid1               string     Entryname
       -ufo1               string     UFO features
       -fformat1           string     Features format
       -fopenfile1         string     Features file name

       "-outfile" associated qualifiers
       -rformat2           string     Report format
       -rname2             string     Base file name
       -rextension2        string     File name extension
       -rdirectory2        string     Output directory
       -raccshow2          boolean    Show accession number in the report
       -rdesshow2          boolean    Show description in the report
       -rscoreshow2        boolean    Show the score in the report
       -rstrandshow2       boolean    Show the nucleotide strand in the report
       -rusashow2          boolean    Show the full USA in the report
       -rmaxall2           integer    Maximum total hits to report
       -rmaxseq2           integer    Maximum hits to report for one sequence

       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 and exit. 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
       -version            boolean    Report version number and exit

Qualifier | Type | Description | Allowed values | Default
--- | --- | --- | --- | ---
Standard (Mandatory) qualifiers
[-sequence] (Parameter 1) | sequence | Nucleotide sequence filename and optional format, or reference (input USA) | Readable sequence | Required
-enzymes | string | Comma separated enzyme list | Any string | all
[-outfile] (Parameter 2) | report | Output report file name | (default -rformat table) | <*>.recoder
Additional (Optional) qualifiers
(none)
Advanced (Unprompted) qualifiers
-sshow | boolean | Display untranslated sequence | Boolean value Yes/No | No
-tshow | boolean | Display translated sequence | Boolean value Yes/No | No
Associated qualifiers
"-sequence" associated sequence qualifiers
-sbegin1 -sbegin_sequence | integer | Start of the sequence to be used | Any integer value | 0
-send1 -send_sequence | integer | End of the sequence to be used | Any integer value | 0
-sreverse1 -sreverse_sequence | boolean | Reverse (if DNA) | Boolean value Yes/No | N
-sask1 -sask_sequence | boolean | Ask for begin/end/reverse | Boolean value Yes/No | N
-snucleotide1 -snucleotide_sequence | boolean | Sequence is nucleotide | Boolean value Yes/No | N
-sprotein1 -sprotein_sequence | boolean | Sequence is protein | Boolean value Yes/No | N
-slower1 -slower_sequence | boolean | Make lower case | Boolean value Yes/No | N
-supper1 -supper_sequence | boolean | Make upper case | Boolean value Yes/No | N
-scircular1 -scircular_sequence | boolean | Sequence is circular | Boolean value Yes/No | N
-sformat1 -sformat_sequence | string | Input sequence format | Any string |
-iquery1 -iquery_sequence | string | Input query fields or ID list | Any string |
-ioffset1 -ioffset_sequence | integer | Input start position offset | Any integer value | 0
-sdbname1 -sdbname_sequence | string | Database name | Any string |
-sid1 -sid_sequence | string | Entryname | Any string |
-ufo1 -ufo_sequence | string | UFO features | Any string |
-fformat1 -fformat_sequence | string | Features format | Any string |
-fopenfile1 -fopenfile_sequence | string | Features file name | Any string |
"-outfile" associated report qualifiers
-rformat2 -rformat_outfile | string | Report format | Any string | table
-rname2 -rname_outfile | string | Base file name | Any string |
-rextension2 -rextension_outfile | string | File name extension | Any string |
-rdirectory2 -rdirectory_outfile | string | Output directory | Any string |
-raccshow2 -raccshow_outfile | boolean | Show accession number in the report | Boolean value Yes/No | N
-rdesshow2 -rdesshow_outfile | boolean | Show description in the report | Boolean value Yes/No | N
-rscoreshow2 -rscoreshow_outfile | boolean | Show the score in the report | Boolean value Yes/No | N
-rstrandshow2 -rstrandshow_outfile | boolean | Show the nucleotide strand in the report | Boolean value Yes/No | Y
-rusashow2 -rusashow_outfile | boolean | Show the full USA in the report | Boolean value Yes/No | N
-rmaxall2 -rmaxall_outfile | integer | Maximum total hits to report | Any integer value | 0
-rmaxseq2 -rmaxseq_outfile | integer | Maximum hits to report for one sequence | Any integer value | 0
General qualifiers
-auto | boolean | Turn off prompts | Boolean value Yes/No | N
-stdout | boolean | Write first file to standard output | Boolean value Yes/No | N
-filter | boolean | Read first file from standard input, write first file to standard output | Boolean value Yes/No | N
-options | boolean | Prompt for standard and additional values | Boolean value Yes/No | N
-debug | boolean | Write debug output to program.dbg | Boolean value Yes/No | N
-verbose | boolean | Report some/full command line options | Boolean value Yes/No | Y
-help | boolean | Report command line options and exit. More information on associated and general qualifiers can be found with -help -verbose | Boolean value Yes/No | N
-warning | boolean | Report warnings | Boolean value Yes/No | Y
-error | boolean | Report errors | Boolean value Yes/No | Y
-fatal | boolean | Report fatal errors | Boolean value Yes/No | Y
-die | boolean | Report dying program messages | Boolean value Yes/No | Y
-version | boolean | Report version number and exit | Boolean value Yes/No | N

## Input file format

recoder reads a single nucleotide sequence.

The input is a standard EMBOSS sequence query (also known as a 'USA').

Major sequence database sources defined as standard in EMBOSS installations include srs:embl, srs:uniprot and ensembl

Data can also be read from sequence output in any supported format written by an EMBOSS or third-party application.

The input format can be specified by using the command-line qualifier `-sformat xxx`, where 'xxx' is replaced by the name of the required format. The available format names are: gff (gff3), gff2, embl (em), genbank (gb, refseq), ddbj, refseqp, pir (nbrf), swissprot (swiss, sw), dasgff and debug.

See: http://emboss.sf.net/docs/themes/SequenceFormats.html for further information on sequence formats.

### Input files for usage example

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

### Database entry: tembl:x65923

    ID   X65923; SV 1; linear; mRNA; STD; HUM; 518 BP.
    XX
    AC   X65923;
    XX
    DT   13-MAY-1992 (Rel. 31, Created)
    DT   18-APR-2005 (Rel. 83, Last updated, Version 11)
    XX
    DE   H.sapiens fau mRNA
    XX
    KW   fau gene.
    XX
    OS   Homo sapiens (human)
    OC   Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
    OC   Eutheria; Euarchontoglires; Primates; Haplorrhini; Catarrhini; Hominidae;
    OC   Homo.
    XX
    RN   [1]
    RP   1-518
    RA   Michiels L.M.R.;
    RT   ;
    RL   Submitted (29-APR-1992) to the INSDC.
    RL   L.M.R. Michiels, University of Antwerp, Dept of Biochemistry,
    RL   Universiteisplein 1, 2610 Wilrijk, BELGIUM
    XX
    RN   [2]
    RP   1-518
    RX   PUBMED; 8395683.
    RA   Michiels L., Van der Rauwelaert E., Van Hasselt F., Kas K., Merregaert J.;
    RT   "fau cDNA encodes a ubiquitin-like-S30 fusion protein and is expressed as
    RT   an antisense sequence in the Finkel-Biskis-Reilly murine sarcoma virus";
    RL   Oncogene 8(9):2537-2546(1993).
    XX
    DR   Ensembl-Gn; ENSG00000149806; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000279259; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000434372; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000525297; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000526555; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000527548; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000529259; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000529639; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000531743; Homo_sapiens.
    XX
    FH   Key             Location/Qualifiers
    FH
    FT   source          1..518
    FT                   /organism="Homo sapiens"
    FT                   /chromosome="11q"
    FT                   /map="13"
    FT                   /mol_type="mRNA"
    FT                   /clone_lib="cDNA"
    FT                   /clone="pUIA 631"
    FT                   /tissue_type="placenta"
    FT                   /db_xref="taxon:9606"
    FT   misc_feature    57..278
    FT                   /note="ubiquitin like part"
    FT   CDS             57..458
    FT                   /gene="fau"
    FT                   /db_xref="GDB:135476"
    FT                   /db_xref="GOA:P35544"
    FT                   /db_xref="GOA:P62861"
    FT                   /db_xref="H-InvDB:HIT000322806.14"
    FT                   /db_xref="HGNC:3597"
    FT                   /db_xref="InterPro:IPR000626"
    FT                   /db_xref="InterPro:IPR006846"
    FT                   /db_xref="InterPro:IPR019954"
    FT                   /db_xref="InterPro:IPR019955"
    FT                   /db_xref="InterPro:IPR019956"
    FT                   /db_xref="PDB:2L7R"
    FT                   /db_xref="UniProtKB/Swiss-Prot:P35544"
    FT                   /db_xref="UniProtKB/Swiss-Prot:P62861"
    FT                   /protein_id="CAA46716.1"
    FT                   /translation="MQLFVRAQELHTFEVTGQETVAQIKAHVASLEGIAPEDQVVLLAG
    FT                   APLEDEATLGQCGVEALTTLEVAGRMLGGKVHGSLARAGKVRGQTPKVAKQEKKKKKTG
    FT                   RAKRRMQYNRRFVNVVPTFGKKKGPNANS"
    FT   misc_feature    98..102
    FT                   /note="nucleolar localization signal"
    FT   misc_feature    279..458
    FT                   /note="S30 part"
    FT   polyA_signal    484..489
    FT   polyA_site      509
    XX
    SQ   Sequence 518 BP; 125 A; 139 C; 148 G; 106 T; 0 other;
         ttcctctttc tcgactccat cttcgcggta gctgggaccg ccgttcagtc gccaatatgc        60
         agctctttgt ccgcgcccag gagctacaca ccttcgaggt gaccggccag gaaacggtcg       120
         cccagatcaa ggctcatgta gcctcactgg agggcattgc cccggaagat caagtcgtgc       180
         tcctggcagg cgcgcccctg gaggatgagg ccactctggg ccagtgcggg gtggaggccc       240
         tgactaccct ggaagtagca ggccgcatgc ttggaggtaa agttcatggt tccctggccc       300
         gtgctggaaa agtgagaggt cagactccta aggtggccaa acaggagaag aagaagaaga       360
         agacaggtcg ggctaagcgg cggatgcagt acaaccggcg ctttgtcaac gttgtgccca       420
         cctttggcaa gaagaagggc cccaatgcca actcttaagt cttttgtaat tctggctttc       480
         tctaataaaa aagccactta gttcagtcaa aaaaaaaa                               518
    //

## Output file format

The output is a standard EMBOSS report file.

The results can be output in one of several styles by using the command-line qualifier `-rformat xxx`, where 'xxx' is replaced by the name of the required format. The available format names are: embl, genbank, gff, pir, swiss, dasgff, debug, listfile, dbmotif, diffseq, draw, restrict, excel, feattable, motif, nametable, regions, seqtable, simple, srs, table, tagseq.

See: http://emboss.sf.net/docs/themes/ReportFormats.html for further information on report formats.

By default, the output is in 'table' format.

### Output files for usage example

### File: x65923.recoder

    ########################################
    # Program: recoder
    # Rundate: Sun 15 Jul 2012 12:00:00
    # Commandline: recoder
    #    -sequence tembl:x65923
    #    -enzymes EcoRII
    # Report_format: table
    # Report_file: x65923.recoder
    ########################################

    #=======================================
    #
    # Sequence: X65923     from: 1   to: 518
    # HitCount: 22
    #
    # KEY:
    # EnzymeName: Enzyme name
    # RS-Pattern: Restriction enzyme recognition site pattern
    # Base-Posn: Position of base to be mutated
    # AAs: Amino acid. Original sequence(.)After mutation
    # Mutation: The base mutation to perform
    #
    # Creating silent mutations
    #
    #=======================================

      Start     End  Strand EnzymeName RS-Pattern Base-Posn    AAs Mutation
         77      81       + EcoRII     CCWGG             78    P.P     C->G
         77      81       + EcoRII     CCWGG             78    P.P     C->A
         77      81       + EcoRII     CCWGG             78    P.P     C->T
         77      81       + EcoRII     CCWGG             79    R.R     A->C
         77      81       + EcoRII     CCWGG             81    R.R     G->A
        107     111       + EcoRII     CCWGG            108    A.A     C->G
        107     111       + EcoRII     CCWGG            108    A.A     C->A
        107     111       + EcoRII     CCWGG            108    A.A     C->T
        107     111       + EcoRII     CCWGG            109    R.R     A->C
        107     111       + EcoRII     CCWGG            111    R.R     G->A
        182     186       + EcoRII     CCWGG            183    S.S     C->G
        182     186       + EcoRII     CCWGG            183    S.S     C->A
        182     186       + EcoRII     CCWGG            183    S.S     C->T
        197     201       + EcoRII     CCWGG            198    P.P     C->G
        197     201       + EcoRII     CCWGG            198    P.P     C->A
        197     201       + EcoRII     CCWGG            198    P.P     C->T
        248     252       + EcoRII     CCWGG            249    P.P     C->G
        248     252       + EcoRII     CCWGG            249    P.P     C->A
        248     252       + EcoRII     CCWGG            249    P.P     C->T
        293     297       + EcoRII     CCWGG            294    P.P     C->G
        293     297       + EcoRII     CCWGG            294    P.P     C->A
        293     297       + EcoRII     CCWGG            294    P.P     C->T

    #---------------------------------------
    #---------------------------------------

    #---------------------------------------
    # Total_sequences: 1
    # Total_length: 518
    # Reported_sequences: 1
    # Reported_hitcount: 22
    #---------------------------------------

## 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

To find out whether the single point mutations found by recoder introduce new restriction sites, silent should be run on the original sequence. silent does the opposite to recoder. silent finds sites where a restriction enzyme site can be introduced without changing the translation in frame 1 of the sequence.

## References

None.

## Warnings

recoder 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
--- | ---
redata | Retrieve information from REBASE restriction enzyme database
remap | Display restriction enzyme binding sites in a nucleotide sequence
restover | Find restriction enzymes producing a specific overhang
restrict | Report restriction enzyme cleavage sites in a nucleotide sequence
showseq | Display sequences with features in pretty format
silent | Find restriction sites to insert (mutate) with no translation change

silent does the opposite to recoder. silent finds sites where a restriction enzyme site can be introduced without changing the translation in frame 1 of the sequence. recoder finds sites where a restriction enzyme site can be removed without changing the translation in frame 1 of the sequence.

## Author(s)

Tim Carver formerly at:
MRC Rosalind Franklin Centre for Genomics Research Wellcome Trust Genome Campus, Hinxton, Cambridge, CB10 1SB, UK

Please report all bugs to the EMBOSS bug team (emboss-bug © emboss.open-bio.org) not to the original author.

## History

Written (January 2001) - Tim Carver

Renamed from recode to recoder 16 May 2001 as the old name clashed with a common UNIX print utility:
http://www.iro.umontreal.ca/contrib/recode/HTML/

## Target users

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

## Comments

None