...Ideas page for the Summer Of Code Ajax Phyloinformatics project...
The pilot I had in mind was to build a UI component to drive our "xrate" tool:
XRate takes two datatypes:
- multiple sequence alignments (Stockholm Format), which can include phylogenetic trees (Newick Format) as well as per-column markup, comments...
- "PhyloGrammar" (aka "grammar") files (Xrate Format), which include substitution rate matrices and HMM/SCFG state diagrams (including transition probabilities).
Strictly speaking, (1) should be "databases of multiple sequence alignments", since one of the modes of operation is "training a grammar on a database of example alignments". The input format can handle it: Stockholm defines a separator line for holding more than one alignment in a file (e.g. the PFAM and RFAM databases are distributed as single Stockholm files).
The formats are described here:
Different modes of operation for xrate can take different inputs and outputs. For example,
Training Mode: Input = (alignment + grammar) Output = (grammar, re-parameterized) Annotation Mode: Input = (alignment + grammar) Output = (alignment, with new column markup) Phylogeny Mode: Input = (alignment + grammar) Output = (alignment, with new tree)
We have Unix visualization tools for the phylo-grammars: Nick Goldman's Bubble Plots for substitution rate matrices, Graph Viz for the HMM/SCFG state diagrams, many many different phylogenetic Tree Viewers...
Many of these tools are in Perl. (xrate itself is C++)
The essential idea is to take the alignment viewer, add asynchronous functionality to allow you to call xrate on the server, and spice up the user interface with a client-server rendering scheme including...
- bubbleplots & graphviz state diagrams (for the Xrate Format files);
- alignments & phylogenetic trees (for the Stockholm Format files).
Some way to manage alignments and grammars might be nice (e.g. a browsable file store on the server).
I think it's do-able in three months with focus. It could be a nice little prototype for future Ajax phylo apps.
-- Ian Holmes - 24 Mar 2007