mirhan at indiana.edu
Thu Jun 12 11:44:08 EDT 2008
I'll do that,
I was thinking of having an annotationCollectionI reference as a variable,
But inheriting from AnnotatableI sounds better.
Do you mean I should make a more generic AnnotatableNode instead of NodePhyloXML?
On 6/12/08 9:58 AM, "Hilmar Lapp" <hlapp at gmx.net> wrote:
I agree with implementing Bio::AnnotatableI. I'm not sure we need to
have a node class specifically tailored to PhyloXML but maybe we do.
But even if we do, the annotatable capability sounds generic enough
for having a Bio::Tree::AnnotatableNode, from which
Bio::Tree::NodePhyloXML would inherit and do all the things that are
really specific to PhyloXML?
On Jun 11, 2008, at 8:56 PM, Jason Stajich wrote:
> On Jun 11, 2008, at 5:48 PM, Han, Mira wrote:
>> I can remove the TreePhyloXML class,
>> And use the tag functions for Bio::Tree::TreeI.
>> Yeah, it seems like TreePhyloXML is overkill.
>> I don't know about the node though.
>> I think it would be cleaner to have a NodePhyloXML,
>> Since there are much more than scalar values that will be
>> connected to the node,
>> Such as annotations, sequences, etc.
> Mira -
> That sounds quite fine to me. I agree that the NodePhyloXML is
> probably going to be different enough from the generic Node object
> to justify making a sub-class. You may want to inherit from the
> interfaces like Bio::AnnotatableI in the NodePhyloXML if you are
> attaching annotations, etc.
> For example I do this for the Bio::Tree::AlleleNode which are nodes
> in a tree and also Individuals from a Population for popgen analyses.
>> On 6/11/08 4:50 PM, "Jason Stajich" <JASON_STAJICH at BERKELEY.EDU>
>> Hey Mira -
>> Looks like things are going well. I just wanted to check and see
>> if it is totally necessary to create new classes or if you can use
>> the get/set tag/value pair interface that already exists?
>> These are the functions that are present in Bio::Tree::TreeI and
>> Bio::Tree::NodeI :
>> These are the same functions we use in SeqFeatureI interface as
>> well. It is just possible to re-use these rather than making a
>> new function for every data type - this way we don't have to
>> change the interface for different richness of data.
>> BTW (and this may be me who did it, but maybe Sendu remembers) - I
>> am not sure why Bio::Tree::TreeI ISA Bio::Tree::NodeI. Does
>> anyone know? Trees are containers around a set of Nodes which are
>> linked together to form a tree and the Tree object holds a pointer
>> to the root node.
>> Jason Stajich
>> Miller Research Fellow
>> University of California, Berkeley
>> lab: 510.642.8441
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
: Hilmar Lapp -:- Durham, NC -:- hlapp at gmx dot net :
More information about the Bioperl-l