oh, nice. I haven't stumbled upon these queries. They will sure serve me in the near future, but regarding my question i just found something quite nice (QuickGo on ebi.ac.uk)
Hi
Does somebody know of a tool that takes as input a pair or a group of GO terms and then shows me who is the ancestor of who in in this group?
Let's say I have a 100+ different GO terms and want to know which are "fathers" of others. To verify all manually on the gene ontology website is a tedious job, and until now I haven't found an easy solution.
Cheers!
Michi
3 answers
You can use a public mysql server for GO.
for example, you could use a variation of the following query ( http://wiki.geneontology.org/index.php/Example_Queries#Find_ancestors_of_the_node_.27nucleus.27) 'Find ancestors of the node 'nucleus'"
SELECT DISTINCT
ancestor.*,
graph_path.distance,
graph_path.term1_id AS ancestor_id
FROM
term
INNER JOIN graph_path ON term.id=graph_path.term2_id)
INNER JOIN term AS ancestor ON ancestor.id=graph_path.term1_id)
WHERE term.name='nucleus';
In the end this was the best option for me. I created a script that recreates the ontology-hierarchy using this query. See for yourself: http://bg.upf.edu/blog/2011/04/understanding-the-hierarchy-of-your-go-terms-subset/
Ok, I found something!
Go here http://www.ebi.ac.uk/QuickGO/GMultiTerm#a=&tab=choose-terms
There you can enter a list of GO IDs, and then you can click on the "add to graph" symbol. Very easy to check the relation between GO-Terms!
Download the gene_ontology.obo file, and search for the is_a: fields of the relevant records. The file is a simple text format, and easy to parse.
Log in to answer this question.