[Pipet Devel] databases

Brad Chapman chapmanb at arches.uga.edu
Thu Dec 2 18:07:49 EST 1999

Fresh off of my schooling on what Loci is/is not, here are my thoughts on a
tree representation of a workflow diagram:

>> The data can be represented as a "WHAX tree", with the tag representing
>> the branches and the tag value representing the node.  Additions to the
>> a subset of the data can be integrated into the larger database by
>> simple manipulations of WHAX trees.
>As a complete aside from the database issue, Loci needs to represent the
>Workflow Diagram / Graphical Script in XML.  This is of course a tree
>structure.  Perhaps we should look at how WHAX trees work for this purpose.

	It seems to me that a balanced tree data structure (B-Tree, from my
Intro to Algorithms text) would be an excellent way to represent a workflow
diagram! I haven't looked through enough Python libs yet, but I'm positive
there must be some nice tree classes already implemented that could be
extended so we wouldn't have to do all the work (just implement a suitable
holder class and the additional functions to deal with it). The tree seems
to flow kind of naturally from the structure of how I picture a loci
diagram working. In addition, since it would be *just* a data stucture
(although a big one!), this could help in passing it around (I think I saw
a mention somewhere about the idea of interchanging loci implementations
between collaborators).
	The only problem I picture is when mutiple branches feed into a
single node:

			big container loci
			|		|
			|		|
		  document		document
		(genbank sequence) (genbank sequence 2)
		|			|
		|			|
		converter		converter
			|		|
			|		|
		(ie. seqalign to align the 2 sequences)

Does this corrupt a tree? I don't think this is explicitly disallowed in
the rules on a branched tree, but I can't really every recall seeing a tree
like this. I would think it would then become a graph, but this seems too
general to represent the type of data, since it still has a lot of "tree"
	Anyways, that is just my naive "I have read the intro to algorithms
text" thoughts on the WHAX tree idea. I would be very interested in seeing
the WHAX algorithms, and also in hearing other people's input on this (all
the computer science people out there can straighten me out!). Many thanks
to Jennifer for posting the original info.


More information about the Pipet-Devel mailing list