[Pipet Devel] and still more infrastructure things

Carlos Maltzahn carlosm at moet.cs.colorado.edu
Sun Feb 28 19:54:22 EST 1999

    [J.W. Bizzaro]
    But let's reverse the question.  If we need XML files for (1) working with large
    data, (2) passing data across the Internet and to CORBA systems, and (3)
    archiving data, then what do we need Paos for?
    I know it was my idea to choose Paos, but I'm asking if everyone
    thinks it fits, and where it fits, considering the model I've
    been describing.
    How about having Paos handle the workflow data while XML handles
    the biological, instead of defining an XML that mixes the two?
    I guess it depends on just how Paos passes the objects.  It would
    be best if Paos could be called just once, each time the workflow
    data needed to be passed, passing it not only to the next process
    but to the Benchtop too...hmmm.  I wouldn't want Loci to be
    anymore centralized than that.
I totally agree that Paos shouldn't shuffle around real data. I see the
role of Paos as a coordination tool but not as a database management
system. I attached a GIF picture to this mail. This picture contains Gnome
clients, Paos server, and Tool Manager (excuse me if I introduce yet
another set of terms). Gnome clients and Tool Manager are Paos clients. A
Gnome client consists of a GCL editor and progress monitor, among other
things. A Tool Manager 

- parses XML data and forwards it to the actual tool, 
- turn the result of a tool into XML data and send it to another tool 
- sends status information to a Paos server (e.g. processing started or
  completed, or processing ran out of memory),
- receives notifications from a Paos server (e.g. "suspend", "abort",
  or status query),
- queries a Paos server about where to send results to,

The thin lines are communicating Python objects, the thick
lines communicate XML structures. Note that the destination of Tool
Manager can also be a Gnome client which is used to visualize results.

Another question in the discussion was whether to use Python objects for
communication or XML. XML is safer because it is an accepted and
extensible standard. However, transfering serialized objects was the
performance bottleneck in the Chautauqua workflow system (which uses
Paos) and I introduced a bit of trickery to reduce this overhead. So I
would recommend sticking with Python objects for Paos communications but
use XML for everything else.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: tulip-architecture.gif
Type: image/gif
Size: 3548 bytes
Desc: architecture
Url : http://bioinformatics.org/pipermail/pipet-devel/attachments/19990228/060d6d63/tulip-architecture.gif

More information about the Pipet-Devel mailing list