[BioSQL-l] Ontology category
Hilmar Lapp
hlapp@gnf.org
Mon, 11 Nov 2002 15:41:56 -0800
It appears the Biosql schema is settling down. Among the open spots
is what to eventually do with the category of an ontology term.
The current solution I implemented is ontology terms having a
nullable foreign key to themselves that denotes the category.
There are several things worth mentioning about this.
1) First off, it works for us (tm), which means it is fully
supported in the TermI adaptor in bioperl-db.
2) It is simply modeled after the bioperl object model, where ChrisM
and subsequently we had the category slot of Ontology::TermI be
another TermI object.
3) It has been pointed out by several people that this approach is
deficient in that it mixes different entities into one object and
potentially cannot capture information one would like to capture
about Ontologies (not terms), like namespace, authority,
cardinality, type, and whatnot. I agree with basically all of this.
If the current solution is to be changed, my suggestion is to change
the object model first, because otherwise the object model is wrong
(worse than the rel. model being wrong), and mapping the same class
to two different relational entities is just unnecessary and
unjustified complexity.
Given the fact that it works for us, I'm somewhat lazy to drive that
change myself. So I'm trying to solicit concrete proposals here from
people who are dissatisfied with the present design. I'm willing to
help implementing the winning proposal. To lower your activation
energy if the current design puts you off, note that if you don't
speak up the current design may end up unmodified in 1.2, which will
make it stick for a while.
-hilmar
--
-------------------------------------------------------------
Hilmar Lapp email: lapp at gnf.org
GNF, San Diego, Ca. 92121 phone: +1-858-812-1757
-------------------------------------------------------------