[Pipet Devel] Resend: workflow diagram data model and databases

J.W. Bizzaro bizzaro at geoserve.net
Mon Jan 10 23:05:49 EST 2000

Brad Chapman wrote:
> I changed it to only parse to directory level 1 and it does speed things up
> "a bit." Part of the slowdown is also due to the fact that I'm taking the
> effort to print things out nice, so that requires two extra walks through
> the dom tree, one to strip the whitespace at the beginning, and one to add
> the beautifying whitespace at the end. Also, I really don't think my code
> is very optimal for making the DOM tree from the filesystem info is very
> optimal. I'm still trying to think up a quicker solution.

Right, you do print to stdout.  That really does slooooooow things down.

> This is something I *tried* to do in my current code. All of my xml
> processing code is separate from the workspace and the actual changes I
> made to workspace.py are very small (only a few lines of code calling the
> xml functions). Some of it is dependent on the Gtk interface, but I don't
> think that would be too difficult to change.

I've got a pretty clear picture of how this dialog will work, so I'd like to
take on that part of the Desktop/Workspace.  You'll see what kind of
'requests' I generate, and that should help a lot with designing the

> Makes sense. So then when the user is ready to execute a workspace script,
> the middleware (xml) will be parsed and used to generate code for
> interfacing with the backendware (the programs)? Am I thinking along the
> right lines?

Ummm.  The data structure of the linked XML in the database is a pseudo-code
that will be followed by interpreters.  These interpreters will 'call up' loci
according to how they are connected, execute them one-by-one, and manage the
data transfer.  And forks in the workpath will cause multiple interpreters to
be launched.

Basically, the interpreters will walk the workpath ringing bells, blowing
whistles and tooting horns as they are found.  (What is the name used to
describe those 'mouse trap' devices, where you take the most round-about path
to do the simplest thing?  It's named after a person.  This is how you may
picture a running WFD.)  This is the DYNAMIC/ACTION/VERB part of Loci. 
Otherwise, all you see is the STATIC/ACTIONLESS/NOUN part.

                      |           J.W. Bizzaro           |
                      |                                  |
                      | http://bioinformatics.org/~jeff/ |
                      |                                  |
                      |           THE OPEN LAB           |
                      |    Open Source Bioinformatics    |
                      |                                  |
                      |    http://bioinformatics.org/    |

More information about the Pipet-Devel mailing list