[Bioperl-l] [Wg-phyloinformatics] Summer of Code: project summaries
Chris Fields
cjfields at illinois.edu
Wed Sep 17 12:41:52 EDT 2008
On Sep 16, 2008, at 12:18 AM, Han, Mira wrote:
> Hi,
> Just writing to summarize the final product of this summer. (even
> though it's overdue)
BLTN
> The phyloXML support in BioPerl project is finished officially,
> I've created three new modules,
> Bio::TreeIO::phyloxml,
> Bio::Tree::AnnotatableNode,
> and Bio::Annotation::Relation.
> The parsing is done for all elements except for <ProteinDomain>
> And the validation step is still missing.
> I'm planning to add those in in the future.
Great work! One issue that will come up: have you tested round-
tripping?
(i.e. where object data read in from the original phlyoxml data is the
same as object data read in from bioperl-derived phyloxml output)
> I was contemplating to make a Bio::Annotation::XML till the end,
> But decided not to since there was already a new module
> Bio::Annotation::TagTree, that looked like the same thing.
> Currently, the module does not use TagTree, it uses nested
> AnnotationCollections instead, because TagTree was a temporary stub
> at the time.
I would consider it no longer temporary (just changed it in svn). The
'stub' part was left over from the initial commit; it has now been
tested with bioperl-db (via swissprot tests). It may need more
rigorous testing via bioperl-db but it appears to work just fine
(famous last words...).
There was one issue with Data::Stag (repeated 'Use of undefined
variable' errors that popped up with Annotation.t tests), but Chris M.
released a new Data::Stag to CPAN just recently which fixes that. It
wasn't a bioperl bug and was relatively harmless.
> There are methods in phyloxml that seem out of place there,
> For example, the print_annotation and print_attr functions that
> print the annotations in phyloXML format.
> Or the read_annotation function that reads the value of the
> annotation for a certain object.
> I feel like these functions should go with the Annotation object,
> But since there were no Annotation object that is phyloXML specific,
> I just put them in the TreeIO::phyloxml.
> This may change too in the future.
I don't see a problem with this; if you look at the various IO parsers
there are several helper methods present (see Bio::SeqIO::genbank for
an example).
If you were to go that route, I would add a method to the (generic)
Annotation class that accepts some customization via a callback, maybe
using a default callback if one isn't supplied. See the various
Bio::AnnotationI display_text methods, which were added in as a more
explicit replacement for operator overloading.
> The documentations are all finished and can be seen in
> http://www.bioperl.org/wiki/Module:Bio::TreeIO::phyloxml
> http://www.bioperl.org/wiki/Module:Bio::Tree::AnnotatableNode
> http://www.bioperl.org/wiki/Module:Bio::Annotation::Relation
>
> The detailed progress of the project is documented in
> http://www.bioperl.org/wiki/PhyloXML_support_in_BioPerl
>
> and there is also a demo page that describes the use in
> http://www.bioperl.org/wiki/Phyloxml_Project_Demo
I'll give them a look over, but that's a great start!
> Finally I'd like to thank Chris Fields and Hilmar Lapp,
> for the constant support during the summer.
> And the people on the list for providing helpful suggestions when I
> came with a question.
> See you around.
>
> Mira Han
Thanks, and congrats on completeing the summer of code! Hope you
stick around a bit longer; we need all the hands we can get.
chris
More information about the Bioperl-l
mailing list