Question: How to check relations in gene ontology?
0
gravatar for jachymb
2.1 years ago by
jachymb0
jachymb0 wrote:

Hello I would like to be able to check relations between go terms in an automated manner. Assume for example I have two terms, say GO:0019900 and GO:0007050. Now I would like to be able know if for example GO:0019900 some regulated by GO:0007050 and such. On the gene ontology web, I can search for one term see the relation graph and check if the second term is there. But I would like to know if it can be done automatically - for example if there is a GO API for this, or if an OWL reasoner could perhaps verify this information in the OWL version of the ontology. Thanks

ontology go reasoning gene • 687 views
ADD COMMENTlink modified 2.1 years ago by Pierre Lindenbaum123k • written 2.1 years ago by jachymb0
1
gravatar for Jean-Karim Heriche
2.1 years ago by
EMBL Heidelberg, Germany
Jean-Karim Heriche21k wrote:

There are several ways to do this:
- directly query the GO MySQL database
- use the GO::Parser perl module
- use the Bioconductor GO.db package
- use owltools

ADD COMMENTlink modified 2.1 years ago • written 2.1 years ago by Jean-Karim Heriche21k
1
gravatar for Pierre Lindenbaum
2.1 years ago by
France/Nantes/Institut du Thorax - INSERM UMR1087
Pierre Lindenbaum123k wrote:

using mysql:

SELECT DISTINCT
 child.acc AS child_acc,
 child.name AS child_name,
 rel.acc AS rel,
 parent.acc AS parent_acc,
 parent.name AS parent_name
FROM
 term AS child,
 term AS parent,
 term AS rel,
 graph_path
WHERE  
    child.id=graph_path.term2_id AND
    parent.id=graph_path.term1_id AND
    rel.id = graph_path.relationship_type_id AND
    child.acc  in ("GO:0007049", "GO:0007050") AND
    parent.acc  in ("GO:0007049", "GO:0007050") AND
    child.acc!=parent.acc

;

example:

$ mysql -hmysql.ebi.ac.uk -ugo_select -pamigo -P4085 go_latest -A < input.sql

child_acc   child_name  rel parent_acc  parent_name
GO:0007050  cell cycle arrest   negatively_regulates    GO:0007049  cell cycle
GO:0007050  cell cycle arrest   part_of GO:0007049  cell cycle
GO:0007050  cell cycle arrest   regulates   GO:0007049  cell cycle
ADD COMMENTlink written 2.1 years ago by Pierre Lindenbaum123k

Are the relations in the database always transitive or do I have to compute the transitive closure to be sure?

ADD REPLYlink written 2.1 years ago by jachymb0
1

Transitive closures are pre-computed in the graph_path table.

ADD REPLYlink written 2.1 years ago by Jean-Karim Heriche21k
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1368 users visited in the last hour