[Bioperl-l] treexml

Han, Mira mirhan at indiana.edu
Thu Jun 12 15:44:08 UTC 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?

Mira


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?

        -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