Difference between revisions of "PhyloSoC:BioPerl integration of the NeXML exchange standard and Bio::Phylo toolkit/nexml module design"

From Phyloinformatics
Jump to: navigation, search
m (Overview)
m (Nexml Item Module Design (work in progress))
Line 3: Line 3:
 
==== Overview ====
 
==== Overview ====
  
Currently, parsing a nexml file into Bioperl makes use of the *IO modules (AlignIO, SeqIO, and TreeIO) to load nexml represented data into Bioperl objects.  These modules will handle each data type separately, but the ultimate goal is to make this easier on the user and allow the full parsing of a nexml document with one pass of the Bio::Phylo parser without forcing the user to parse the file three times - once each for sequences, alignments, and trees. To accomplish this, a Bio::Nexml module will be created that will act as a container for the different Bioperl that are being used to represent an entire Nexml documentA powerful feature of nexml is its ability to relate data to each other in relevant ways. This module will also maintain (as much as possible) the relationships between data.
+
Currently, parsing a nexml file into Bioperl makes use of the *IO modules (AlignIO, SeqIO, and TreeIO) to load nexml represented data into Bioperl objects.  These modules will handle each data type separately, but the ultimate goal is to make this easier on the user and allow the full parsing of a nexml document into a bioperl object that can contain each data type and maintain the relationships between them. To accomplish this, a Bio::Nexml module will be created that will act as a container for the different Bioperl object typesThe container class will maintain relationships between the data, but will otherwise be a simple container that lets the majority of the work be done by the object classes it contains.
 +
 
  
 
==== Data Relationships to Maintain ====
 
==== Data Relationships to Maintain ====

Revision as of 09:17, 10 June 2009

Nexml Item Module Design (work in progress)

Overview

Currently, parsing a nexml file into Bioperl makes use of the *IO modules (AlignIO, SeqIO, and TreeIO) to load nexml represented data into Bioperl objects. These modules will handle each data type separately, but the ultimate goal is to make this easier on the user and allow the full parsing of a nexml document into a bioperl object that can contain each data type and maintain the relationships between them. To accomplish this, a Bio::Nexml module will be created that will act as a container for the different Bioperl object types. The container class will maintain relationships between the data, but will otherwise be a simple container that lets the majority of the work be done by the object classes it contains.


Data Relationships to Maintain

  • Sequences <=> Nodes
    • How to do this?
  • Alignments <=> Trees
    • How to do this?
  • Taxa <=> Trees
    • How to do this?
  • Taxa <=> Alignments
    • How to do this?
  • Taxon <=> Node
    • How to do this?