REVIGO Logo

Frequently Asked Questions

Q: I have a list of interesting genes, but not a list of GO terms.

A: You can use one of the following web servers to search for GO terms that are overrepresented in your list of genes:

After that, return here with the list of GO terms and p-values (or enrichments).


Q: I still don't have a list of interesting genes, but I'd like to try out my favourite GO enrichment tool and then bring the output to REVIGO to summarize and visualize.

A: Here are the links to two example gene sets, one from agriGO (click "Example") and another one from DAVID (click "Demolist_1").


Q: The species I work on is not in the species list in Advanced options.

A: For most cases the default value of the whole UniProt database is sufficient. You can request a new species to be added. Just send us a message via Contact form.

The list of currently supported species:
NCBI taxon IDSpecies name
0Whole UniProt database (default)
3702Arabidopsis thaliana
224308Bacillus subtilis subsp. subtilis str. 168
9913Bos taurus
6239Caenorhabditis elegans
190650Caulobacter vibrioides CB15
3055Chlamydomonas reinhardtii
7955Danio rerio
44689Dictyostelium discoideum
7227Drosophila melanogaster
83333Escherichia coli K-12
9031Gallus gallus
9606Homo sapiens
10090Mus musculus
83332Mycobacterium tuberculosis H37Rv
243273Mycoplasma genitalium G37
272634Mycoplasma pneumoniae M129
39947Oryza sativa Japonica Group
36329Plasmodium falciparum 3D7
208964Pseudomonas aeruginosa PAO1
10116Rattus norvegicus
559292Saccharomyces cerevisiae S288C
284812Schizosaccharomyces pombe 972h-
1111708Synechocystis sp. PCC 6803 substr. Kazusa
31033Takifugu rubripes
4577Zea mays

Q: How do I integrate Revigo with my service or a programming language?

The integration with Revigo can be done with:
  1. The simple post method, but requires web browser and user interaction,
  2. The simple RESTful API method,
  3. The advanced job submitting method.

1) The simple post method with user interaction and web browser to display the results

Post a form to the server (with cookies and java script enabled) at http://revigo.irb.hr/, for example:
<html>
    <head>
        <title>Revigo integration page</title>
    </head>
    <body>
        <form action="http://revigo.irb.hr/" method="post">
            <textarea name="goList" cols="80" rows="10"></textarea><br />
            <input name="cutoff" type="text" value="0.70" /><br />
            <input name="valueType" type="text" value="pvalue"/><br />
            <input name="speciesTaxon" type="text" value="0"/><br />
            <input name="measure" type="text" value="SIMREL"/><br />
            <input name="autoStart" type="text" value="false"/><br />
            <input name="submitForm" type="submit" value="Submit"/>
        </form>
    </body>
</html>
The form can be posted with these fields:
  • "goList" - Your data (this value is required)
  • "cutoff" - [ 0.4 - 0.9 ] (if the value is not provided 0.7 will be assumed)
  • "valueType" - [ PValue, Higher, Lower, HigherAbsolute, HigherAbsLog2 ] (if the value is not provided PValue will be assumed)
  • "speciesTaxon" - One of the supported NCBI species taxons (0 for the whole UniProt database). (if the value is not provided 0 will be assumed)
  • "measure" - [ SIMREL, LIN, RESNIK, JIANG ] (if the value is not provided SIMREL will be assumed)
  • "autoStart" - [ true, false ] (if the value is not provided False will be assumed)

* The fields "inputGoList", "isPValue", "whatIsBetter" and "goSizes" are deprecated, but can be used for compatibility. Please don't use them in the future as it's not guaranteed to work with the new revisions of Revigo.

If you send a parameter value that is invalid or out of range the error message will be displayed. The field values are not case sensitive.

After you submit the job via this method you will be automatically redirected to the results page.


2) The RESTful API

Post a form to the server at http://revigo.irb.hr/Revigo.aspx with the following parameters:
  • "goList" - Your data (this value is required)
  • "cutoff" - [ 0.4 - 0.9 ] (if the value is not provided 0.7 will be assumed)
  • "valueType" - [ PValue, Higher, Lower, HigherAbsolute, HigherAbsLog2 ] (if the value is not provided PValue will be assumed)
  • "speciesTaxon" - One of the supported NCBI species taxons (0 for the whole UniProt database). (if the value is not provided 0 will be assumed)
  • "measure" - [ SIMREL, LIN, RESNIK, JIANG ] (if the value is not provided SIMREL will be assumed)

If you send a parameter value that is invalid or out of range you will get the error message. The field values are not case sensitive.

The advantage of this method is that cookies and java script are not needed, you don't have to query job status, and the server doesn't store your temporary results. The results will be available immediately after the job completes.

The output is in HTML format, it has "Error" element in which you can find error description(s) (if any error occured) and table for each available namespace with the following names: "BiologicalProcess", "CellularComponent" and "MolecularFunction". The tables have following columns: "Term ID", "Name", "Frequency", "Uniqueness", "Dispensability", "Eliminated" and "Representative". The "Representative" value of -1 means the term has no representative, it represents itself.

Programming examples


3) The advanced job submitting method

The advantage of this method is that cookies and java script are not needed and you can get all of the results.

The process of submitting jobs is divided into three stages:


First stage - Submit the job to the server

Submit the job at http://revigo.irb.hr/StartJob.aspx with the following parameters:
  • "goList" - Your data (this value is required)
  • "cutoff" - [ 0.4 - 0.9 ] (if the value is not provided 0.7 will be assumed)
  • "valueType" - [ PValue, Higher, Lower, HigherAbsolute, HigherAbsLog2 ] (if the value is not provided PValue will be assumed)
  • "speciesTaxon" - One of the supported NCBI species taxons (0 for the whole UniProt database). (if the value is not provided 0 will be assumed)
  • "measure" - [ SIMREL, LIN, RESNIK, JIANG ] (if the value is not provided SIMREL will be assumed)

If you send a parameter value that is invalid or out of range the error will be returned. The field values are not case sensitive.

StartJob method returns JSON object in the following format: {"jobid": 0, "message": ""}
  • "jobid" - Job ID which you need every time you query server about your job. The -1 will be returned if error occured.
  • "message" - Contains description of warning or an error. Empty if no warning or error occured.

Second stage - Wait for the job to complete

Query the job status at http://revigo.irb.hr/QueryJobStatus.aspx with the following parameters:
  • "jobid" - Job ID that you collected from the previous step.
QueryJobStatus method returns JSON object in the following format: {"running": 0, "progress": 0, "message": "", "warnings": "", "errors": ""}
  • "running" - [0, 1] Flag that represents if the job is still running (1) or if it's complete (0).
  • "progress" - Percentage of completion.
  • "message" - The current state of calculation in text form.
  • "warnings" - List of all of the warnings in text form.
  • "errors" - List of all of the errors in text form.

Third stage - Gather the results

Gather the job results at http://revigo.irb.hr/ExportJob.aspx with the following parameters:
  • "jobid" - Job ID that you collected in the first step.
  • "namespace" - [1, 2, 3] The namespace for which you are collecting results. 1 represents BIOLOGICAL_PROCESS, 2 represents CELLULAR_COMPONENT, 3 represents MOLECULAR_FUNCTION.
  • "type" - [csvtable, rtable, xgmml, csvtree, rtree] The type of the output that you require. CSVTable gets the resulting table with Scatterplot data. RTable gets the R script for Scatterplot. Xgmml gets the xgmml for Cytoscape. CSVTree gets the Tree Map data in a comma separated values format. RTree gets the R script for Tree Map.

ExportJob method returns text object in the format you specified, or a single line beginning with "Error:" if the error occured, parameters are invalid or no data is available for a given namespace.
The server will keep the results for 15 minutes since your last Job command.


Programming examples