I think the GUI-to-core *API* that Brad and I have been developing for Loci is very nice. It's a simple dialog of request, approval, and pointing to data. But what I am questioning is the *protocol* used, which is a standard TCP/IP socket. Commands from Loci's XML-based API are streamed across a socket. Here is a short example where the GUI (front) requests the addition of a new workspace (subnet), and the core (middle) performs the addition and approves a change in the GUI to reflect what the core has done: <front> <add_workspace> <workspace id='' > </workspace> </add_workspace> </front> <middle> <success> <workspace id='workspace1' > </workspace> </success> </middle> So, once again, this API is XML-based and ran through a socket. My question is: Should we use CORBA instead? What are the advantages/disadvantages? My MAJOR interest is that we have multiple UIs that can be attached to (and controlled by) a single core, can run concurrently in the same session, and can be controlled by one-another (via the front-request, middle-approve API). Can we do that with CORBA? Thoughts? Jeff -- +----------------------------------+ | J.W. Bizzaro | | | | http://bioinformatics.org/~jeff/ | | | | BIOINFORMATICS.ORG | | The Open Lab | | | | http://bioinformatics.org/ | +----------------------------------+