Yet another abstract data type
15 Dec '10 02:17
I just noticed that besides LocalParameter, Species, Compartment, and
Parameter, there are also some additional SBML elements that may have a
defined unit. However, this property is already deprectated because it
was a concept of earlier SBML versions. However, to unify our API it
would still make sense to have a common interface as an abstract data
type that unifies all elements that may potentially declare an
As AssignmentRule and RateRule are already children of our abstract data
type ExplicitRule, we can shorten the list a little bit. In case of
KineticLaw, however, the situation is a little more difficult because in
Level 1, KineticLaw may have two associated units: substanceUnits and
timeUnits. I would therefore not like to have a very generic type that
allows to have multiple units but would propose to exclude KineticLaw
from there for now.
I propose to introduce an interface
as the supertype for
As Event and QuantityWithDefinedUnit extend AbstractNamedSBase I am
thinking of implementing an additional type
AbstractNamedSBaseWithDefinedUnit to gather most parts of the
set/get/unsetUnits etc. methods in an abstract data type. This would
avoid copying code to much.
Please see the attached changed type hierarchy graph.
The benefit of this change would be that we could more easily guarantee
that all elements that declare units provide identical methods for
accessing and manipulating these.
Currently, I don't know how to deal with KineticLaw. Any ideas?
Dipl.-Bioinform. Andreas Dräger
Eberhard Karls University Tübingen
Center for Bioinformatics (ZBIT)
Powered by FUDforum. (Copyright Advanced Internet Designs Inc.)