[Bioperl-l] Bio::*Taxonomy* changes

Hilmar Lapp hlapp at gmx.net
Wed Jul 26 15:36:32 UTC 2006


On Jul 26, 2006, at 6:00 AM, Sendu Bala wrote:

> Hilmar Lapp wrote:
>> Instead, create something like
>>
>> 	# return a Bio::Taxonomy::Node:
>> 	my $taxon = $seq->taxon();
>
> Yes, but $seq->species() would also

$seq->species() would return a Bio::Species object which may not be  
more than a thin shell anymore around an implementation that  
delegates almost everything to a lineage object (Bio::Taxonomy).

$seq->taxon() in contrast need not return such a backwards-compatible  
construct.

>
>> 	# alternative approach: return a lineage (taxonomy)
>> 	# this would be Bio::TaxonomyI compliant
>> 	my $lineage = $seq->lineage();
>
> I've since come to the conclusion that anything Taxonomy-ish would be
> inappropriate - see recent post.

Not sure which one you mean, and please don't reference really long  
emails, you're asking a lot of other people to organize your thoughts  
for them.

At any rate, my point is that if you only name it appropriately you  
can avoid misconceptions about what is being returned. The fact that  
it's confusing to return a taxonomy from a method called species()  
doesn't mean it's equally bad to return a lineage (which is a limited  
taxonomy) from a method called lineage().

> [...]
>
> My proposed solution is that bioperl's taxonomy model always lets you
> answer the same questions regardless of your source for taxonomic
> information - see recent post.

See above ... And I'd rather see some code or API examples than  
extensive elaborations.

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








More information about the Bioperl-l mailing list