| tfscan

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

Identify transcription factor binding sites in DNA sequences

## Description

tfscan scans one or more DNA sequences for transcription factor binding sites from the TRANSFAC database. The taxonomic group (Fungi, Insects, ,Plants, Vertebrates or Other) is specified. Matches are searched for using fast sequence word-matching, optionally allowing mismatches. Because the binding sites are so small, there will be many spurious (false positive) matches. Optionally, the minimum length of a match to be reported may be specified.

An output file is written with information on the matches, including sequence ID and accession number, the start and end positions of the match in an input sequence and the sequence of the region where a match has been found. Binding factor information, where available, is given at the end of the matches for each matching entry.

## Usage

Here is a sample session with tfscan

    % tfscan
    Identify transcription factor binding sites in DNA sequences
    Input nucleotide sequence(s): tembl:k00650
    Transcription Factor Class
             F : fungi
             I : insect
             P : plant
             V : vertebrate
             O : other
             C : Custom
    Select class [V]: v
    Number of mismatches [0]:
    Output report [k00650.tfscan]:

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

## Command line arguments

    Identify transcription factor binding sites in DNA sequences
    Version: EMBOSS:6.6.0.0

       Standard (Mandatory) qualifiers (* if not always prompted):
      [-sequence]          seqall     Nucleotide sequence(s) filename and optional
                                      format, or reference (input USA)
       -menu               menu       [V] Select class (Values: F (fungi); I
                                      (insect); P (plant); V (vertebrate); O
                                      (other); C (Custom))
    *  -custom             datafile   Transfac database data file (optional)
       -mismatch           integer    [0] Number of mismatches (Integer 0 or more)
      [-outfile]           report     [*.tfscan] Output report file name (default
                                      -rformat seqtable)

       Additional (Optional) qualifiers:
       -minlength          integer    [1] Display matches equal to or above this
                                      length (Integer 1 or more)

       Advanced (Unprompted) qualifiers: (none)
       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
       -scircular1         boolean    Sequence is circular
       -squick1            boolean    Read id and sequence only
       -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) | seqall | Nucleotide sequence(s) filename and optional format, or reference (input USA) | Readable sequence(s) | Required
-menu | list | Select class |
F | (fungi)
I | (insect)
P | (plant)
V | (vertebrate)
O | (other)
C | (Custom)
| V
-custom | datafile | Transfac database data file (optional) | Data file | File in the data file path
-mismatch | integer | Number of mismatches | Integer 0 or more | 0
[-outfile] (Parameter 2) | report | Output report file name | (default -rformat seqtable) | <*>.tfscan
Additional (Optional) qualifiers
-minlength | integer | Display matches equal to or above this length | Integer 1 or more | 1
Advanced (Unprompted) qualifiers
(none)
Associated qualifiers
"-sequence" associated seqall qualifiers
-sbegin1 -sbegin_sequence | integer | Start of each sequence to be used | Any integer value | 0
-send1 -send_sequence | integer | End of each 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
-squick1 -squick_sequence | boolean | Read id and sequence only | 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 | seqtable
-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 | Y
-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

tfscan reads one or more nucleotide sequences.

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:k00650' is a sequence entry in the example nucleic acid database 'tembl'

### Database entry: tembl:k00650

    ID   K00650; SV 1; linear; genomic DNA; STD; HUM; 6210 BP.
    XX
    AC   K00650; M16287;
    XX
    DT   26-JUL-1991 (Rel. 28, Created)
    DT   14-NOV-2006 (Rel. 89, Last updated, Version 4)
    XX
    DE   Human fos proto-oncogene (c-fos), complete cds.
    XX
    KW   c-myc proto-oncogene; fos oncogene; proto-oncogene.
    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-4165
    RX   DOI; 10.1073/pnas.80.11.3183.
    RX   PUBMED; 6574479.
    RA   van Straaten F., Muller R., Curran T., Van Beveren C., Verma I.M.;
    RT   "Complete nucleotide sequence of a human c-onc gene: deduced amino acid
    RT   sequence of the human c-fos protein";
    RL   Proc. Natl. Acad. Sci. U.S.A. 80(11):3183-3187(1983).
    XX
    RN   [2]
    RX   DOI; 10.1016/0092-8674(85)90285-5.
    RX   PUBMED; 2414012.
    RA   Treisman R.;
    RT   "Transient accumulation of c-fos RNA following serum stimulation requires a
    RT   conserved 5' element and c-fos 3' sequences";
    RL   Cell 42(3):889-902(1985).
    XX
    RN   [3]
    RP   4166-6210
    RX   PUBMED; 3555978.
    RA   Verma I.M., Deschamps J., Van Beveren C., Sassone-Corsi P.;
    RT   "Human fos gene";
    RL   Cold Spring Harb. Symp. Quant. Biol. 51:0-0(0).
    XX
    DR   Ensembl-Gn; ENSG00000170345; Homo_sapiens.
    DR   Ensembl-Tr; ENST00000303562; Homo_sapiens.
    XX
    CC   [2]  sites; promoter region.
    CC   C-fos is the human cellular homolog of the v-fos oncogene of
    CC   Finkel-Biskis-Jinkins murine osteosarcoma virus (FBJ-MuSV).  [2] It
    CC   was found that both human and murine c-fos genes contained an
    CC   enhancer-like element in their 5' noncoding regions that was
    CC   necessary for increased transcription following serum activation.
    CC   The FBJ-MuSV v-fos oncogene contains a deletion relative to murine

      [Part of this file has been deleted for brevity]

         ccagctgtgc agctgcccac cgcaagggca gcagcagcaa tgagccttcc tctgactcgc      3300
         tcagctcacc cacgctgctg gccctgtgag ggggcaggga aggggaggca gccggcaccc      3360
         acaagtgcca ctgcccgagc tggtgcatta cagagaggag aaacacatct tccctagagg      3420
         gttcctgtag acctagggag gaccttatct gtgcgtgaaa cacaccaggc tgtgggcctc      3480
         aaggacttga aagcatccat gtgtggactc aagtccttac ctcttccgga gatgtagcaa      3540
         aacgcatgga gtgtgtattg ttcccagtga cacttcagag agctggtagt tagtagcatg      3600
         ttgagccagg cctgggtctg tgtctctttt ctctttctcc ttagtcttct catagcatta      3660
         actaatctat tgggttcatt attggaatta acctggtgct ggatattttc aaattgtatc      3720
         tagtgcagct gattttaaca ataactactg tgttcctggc aatagtgtgt tctgattaga      3780
         aatgaccaat attatactaa gaaaagatac gactttattt tctggtagat agaaataaat      3840
         agctatatcc atgtactgta gtttttcttc aacatcaatg ttcattgtaa tgttactgat      3900
         catgcattgt tgaggtggtc tgaatgttct gacattaaca gttttccatg aaaacgtttt      3960
         attgtgtttt taatttattt attaagatgg attctcagat atttatattt ttattttatt      4020
         tttttctacc ttgaggtctt ttgacatgtg gaaagtgaat ttgaatgaaa aatttaagca      4080
         ttgtttgctt attgttccaa gacattgtca ataaaagcat ttaagttgaa tgcgaccaac      4140
         cttgtgctct tttcattctg gaagtcttgt aagtttctga aaggtattat tggagaccag      4200
         tttgtcaaga agggtagctg ctggaggggg acacaccctc tgtctgatcc cttatcaaag      4260
         aggacaagga aactatagag ctgattttag aatattttac aaatacatgc cttccattgg      4320
         aatgctaaga ttttctactg cttctgggga cgggaaaccg ctgtgtaaca gcttttgtgg      4380
         gaatacattt tttctgtttc agtactcgca gggggaaata tttaaatttt gttgtgctaa      4440
         tattaaattc agatgttttg atcttaaagg aaccctttaa gcaaacagaa cctagctttg      4500
         tacagactat tttaactttt tattctcaca aaatcacgtg gagggttatt ctacttcaaa      4560
         gatgagcaaa ttgaagaatg gttagaataa acaactttct tgatattccg ttatcggcat      4620
         tagaatcttc ctgctcgtta tcgtatccag caggctgaac tgcctcttga tacttggtta      4680
         aaaaaaattt tcaggccggg cgcggtggcc catgcctgta atcctagcac tttgggaggc      4740
         cgaggcaggc ggatcacctg aggtcgggag ttcgagacca gcctgaccaa catggagaaa      4800
         ccccgtcttt actaaaaata caaaattagc ctggtgtggt ggtgcatgcc tgtaatccta      4860
         gctacttgag aggctgagac aggaaaatca cttgaactcg ggaggcggat gttgcagcga      4920
         actgagattg cgccattgca ctccagcctg ggcaacaaga ttgaaactct gtttaaaaaa      4980
         aaaagttttc actaatgtgt acattttttt gtactctttt attctcgaaa gggaaggagg      5040
         gctattgccc tatcccttat taataaatgc attgtggttt ctggtttctc taataccata      5100
         tgcccttcat tcagtttata gtgggcggaa gtgggggaga aaaagttgct cagaaatcaa      5160
         aagatatctc aaacagcaca aataatggct gatcgttctg caaacaaaaa gttacataat      5220
         agctcaagaa ggagaagtca acatgactct gaacaagctt taacttagaa actttatcat      5280
         cttaaggaag aacgtgacct ttgtccagga cgtctctggt aatggggcac ttacacacac      5340
         atgcacacgt acaaaccaca gggaaaggag accgcccttc tgcctctgct cgcgagtatc      5400
         acgcaggcac catgcactat gttttcacac acactgggtg gaagaagagc ttcagcgcca      5460
         gtcttctaat gctttggtga taatgaaaat cactgggtgc ttatggggtg tcatattcaa      5520
         tcgagttaaa agttttaatt caaaatgaca gttttactga ggttgatgtt ctcgtctatg      5580
         atatctctgc ccctcccata aaaatggaca tttaaaagca acttaccgct ctttagatca      5640
         ctcctatatc acacaccact tggggtgctg tttctgctag acttgtgatg acagtggcct      5700
         taggatccct gtttgctgtt caaagggcaa atattttata gcctttaaat atacctaaac      5760
         taaatacaga attaatataa ctaacaaaca cctggtctga aataacaagg tgatctaccc      5820
         tggaaggaac ccagctggtg ggccaggagc ggtggctcac acctgtaatt ccagcacttt      5880
         gggaggctga gacaggagga tcactggagt ccaggagttt gagaccagcc tgggcaacat      5940
         ggcaaaaccc agtgtgcttc tgttgtccca gctacactac tcaggaggct gaggcaggag      6000
         tatgacttga gcctgggagg gggaggttgc agagaactga tattgcacca ccactgcact      6060
         ccagcctggg tgacacagca aaaccctatc tcaaaaaaaa aaaaaaaaaa aaggaaccca      6120
         gctggttcct gtaggtgtgc aataataaca accagaggaa gaaaaggaag acgatttccc      6180
         agatgaagaa gggcagctgg accttcggac                                       6210
    //

## 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 'seqtable' format.

### Output files for usage example

### File: k00650.tfscan

    ########################################
    # Program: tfscan
    # Rundate: Mon 15 Jul 2013 12:00:00
    # Commandline: tfscan
    #    -sequence tembl:k00650
    #    -menu v
    # Report_format: seqtable
    # Report_file: k00650.tfscan
    ########################################

    #=======================================
    #
    # Sequence: K00650     from: 1   to: 6210
    # HitCount: 9
    #=======================================

      Start     End  Strand Accession Factor                                                      Sequence
       3287    3292       + R04413    T00702; PU.1;Quality: 3; Species: mouse, Mus musculus.      ttcctc
       5940    5944       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       3757    3761       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       2776    2780       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       2418    2422       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       2010    2014       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       1676    1680       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       1356    1360       + R00079    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. tggca
       2009    2014       + R00078    T00599; NF-1/L;Quality: 6; Species: rat, Rattus norvegicus. ttggca

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

    #---------------------------------------
    # Reported_sequences: 1
    # Reported_hitcount: 9
    #---------------------------------------

The output consists of a title line then 5 columns separated by whitespace.

The first column is the identifier of the entry.

The second column is the Accession Number of the entry.

The third and fourth columns are the start and end positions of the match in your input sequence.

The fifth column is the sequence of the region where a match has been found.

Binding factor information, where available, is given at the end of the matches for each matching entry.

## Data files

tfscan reads the TRANSFAC SITE data held in the EMBOSS data files:

- tffungi
- tfinsect
- tfplant
- tfvertebrate
- tfother

Your EMBOSS administrator will have to run the EMBOSS program tfextract in order to set these files up from the TRANSFAC distribution 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

## Notes

The TRANSFAC Database is a commercial database of eukaryotic cis-acting regulatory DNA elements and trans-acting factors. It covers the whole range from yeast to human. The `site.dat` data file from TRANSFAC contains information on individual (putatively) regulatory protein binding sites. It has been divided into the following taxonomic groups.

- Fungi
- Insects
- Plants
- Vertebrates
- Other

An old public domain version of TRANSFAC is available at: ftp://ftp.ebi.ac.uk/pub/databases/transfac/transfac32.tar.Z

## References

- Nucleic Acids Res. 16: 1879-1902, 1988
- BioTechForum - Advances in Molecular Genetics (J. Collins,A.J. Driesel, eds.) 4:95-108, 1991
- Nucleic Acids Res. 20:3-26, 1992

## Warnings

Your EMBOSS administrator will have to run the EMBOSS program tfextract in order to set up the data files from the TRANSFAC distribution files.

## Diagnostic Error Messages

"EMBOSS An error in tfscan.c at line 82:
Either EMBOSS_DATA undefined or TFEXTRACT needs running"

This means that you should contact your EMBOSS administrator and ask them to run the tfextract program to set up the TRANSFAC data for EMBOSS.

## Exit status

It always exits with a status of 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
jaspscan | Scan DNA sequences for transcription factors
marscan | Find matrix/scaffold recognition (MRS) signatures in DNA sequences

Your EMBOSS administrator will have to run the EMBOSS program tfextract in order to set up the data files from the TRANSFAC distribution files.

## Author(s)

Alan Bleasby
European Bioinformatics Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge CB10 1SD, UK

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

## History

Written Summer 2000 - Alan Bleasby

## Target users

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

## Comments

None