[Bioperl-l] treexml

Hilmar Lapp hlapp at gmx.net
Thu Jun 12 09:58:25 EDT 2008


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?

	-hilmar

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.
>
> -jason
>>
>>
>> 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
>>
>>
>>
>>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l

-- 
===========================================================
: Hilmar Lapp  -:-  Durham, NC  -:-  hlapp at gmx dot net :
===========================================================





More information about the Bioperl-l mailing list