[Bioperl-l] OntologyTermI
Lincoln Stein
lstein@cshl.org
Tue, 3 Sep 2002 19:44:16 -0400
That's certainly a possibility. The Graph::* namespace on CPAN has room for a
DAG. Presumably it would inherit from Graph::Directed.
Lincoln
Module Graph (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::BFS (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::Base (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::DFS (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::Directed (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::HeapElem (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::Kruskal (S/ST/STBEY/Graph-Kruskal-2.0.tar.gz)
Module Graph::Reader (N/NE/NEILB/Graph-ReadWrite-1.07.tar.gz)
Module Graph::Reader::Dot (N/NE/NEILB/Graph-ReadWrite-1.07.tar.gz)
Module Graph::Reader::HTK (N/NE/NEILB/Graph-ReadWrite-1.07.tar.gz)
Module Graph::Reader::XML (N/NE/NEILB/Graph-ReadWrite-1.07.tar.gz)
Module Graph::Traversal (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::Undirected (J/JH/JHI/Graph-0.201.tar.gz)
Module Graph::Vertex (J/JH/JHI/Graph-0.005.tar.gz)
On Monday 02 September 2002 12:43 am, Chris Mungall wrote:
> I like this
>
> however, as Bio::Ontology::Graph is likely to be a completely generic
> graph module, why not just use the namespace Graph:: and have it as a
> seperate CPAN module (but possibly keeping the cvs in bioperl-live)? just
> a thought.
>
> once you seperate term from node, do you really need a node object? why
> not just have a graph object and treat the nodes and relationship types as
> strings (possibly namespaced, but the graph module doesn't care about
> this).
>
> On Thu, 29 Aug 2002, Ewan Birney wrote:
> > On Wed, 28 Aug 2002, Lincoln Stein wrote:
> > > I believe that the idea of the term should be separated from the idea
> > > of a graph of terms. I think also that the idea of an association
> > > between a term and a set of biological objects should also be separate.
> > >
> > > I'd propose something like this:
> > >
> > > Bio::Ontology::TermI; # why repeat the word Ontology?
> > >
> > >
> > > Encapsulates the term ID, the term name, the term definition, the
> > > term aliases,and possibly the "obsolete" tag.
> > >
> > > Bio::Ontology::Graph::NodeI;
> > >
> > > A node in a graph.
> > >
> > > Bio::::Ontology::Graph::DAGI;
> > >
> > > Encapsulates the graph traversal methods.
> > >
> > > Bio::Ontology::Term::AssociationI;
> > >
> > > Maps a term to a set of biological objects.
> > >
> > > The nice thing about separating the Term from the DAG is that you can
> > > then reuse the same term in different types of graphs, or chuck the
> > > graph entirely without scrambling the meaning of the term.
> >
> > I am with Lincoln here. This would be the set up I would use as well.
--
========================================================================
Lincoln D. Stein Cold Spring Harbor Laboratory
lstein@cshl.org Cold Spring Harbor, NY
========================================================================