[Biojava-l] Gene Ontology

Phillip Lord p.lord@russet.org.uk
02 Dec 2002 18:14:18 +0000


>>>>> "Tim" == Dudgeon, Tim <TDudgeon@OSIP.com> writes:

  Tim> There has been mention of a Gene Ontology API and/or browser
  Tim> within BioJava in the past.  I've also started off down that
  Tim> route, but before I go too far I thought it made sense to check
  Tim> whether there was any consensus here.  I don't want to reinvent
  Tim> the wheel yet again and will be happy to help get something
  Tim> into BioJava.

  Tim> What I'd like to see is an API to the GO database (probably
  Tim> with adaptors to its various forms), plus some gui browser that
  Tim> can form a component of a bigger tool.  Browser would probably
  Tim> initially use a JTree type appraach, but eventually something
  Tim> that better reflected the fact that a GO term can have multiple
  Tim> parents.

  Tim> What's the state of play here?


It depends on how you want to represent GO. DAGEdit already contains
an API for representing GO, and adaptors for the database, and some of
the GO syntaxes. You should be able to pull these out and use them
directly as libraries. 

Alternatively, if you want to use more generic technology, you could
use some of the DAML+OIL/OWL API's, which are more than capable of
representing the GO DAG, then there are various tools and API's around
for representing these, as well as gui tools, or indeed editing
environments (such as Oiled (http://oiled.man.ac.uk) for instance...).

It's probably also worth reading the Ontology thread on the bioperl
list. It's a moot question how much of a GO representation you put
into biojava. It might make more sense to use a more generic DAG
representation, so that you get, for example, transitive closure, or
shortest path stuff for free. 

Cheers

Phil