[Bioperl-l] treexml

Jason Stajich jason at bioperl.org
Wed Jun 11 20:56:26 EDT 2008

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>  
> wrote:
> 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 :
>  add_tag_value
>  remove_tag
>  get_all_tags
>  get_tag_values
>  has_tag
> 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
> --
> Jason Stajich
> Miller Research Fellow
> University of California, Berkeley
> lab: 510.642.8441
> http://pmb.berkeley.edu/~taylor/people/js.html
> http://fungalgenomes.org

More information about the Bioperl-l mailing list