CCI - Common Client Interface (was Re: Inlined image format)

mcrae@ora.com (Christopher McRae)
Message-id: <199401252224.AA19595@rock.west.ora.com>
From: mcrae@ora.com (Christopher McRae)
Organization: O'Reilly & Associates
Email: mcrae@ora.com
Phone: 415/242-9623
To: www-talk@www0.cern.ch
Subject: CCI - Common Client Interface (was Re: Inlined image format)
Date: Tue, 25 Jan 94 14:24:07 -0800
Sender: mcrae@ora.com
Content-Length: 2366
  This whole debate would become a non-issue if we were to define a
"Common Client Interface" analogous to the CGI (Common Gateway Interface)
standard.  Suppose we define a standard way to send/receive both data
and events between the client and external 'viewers'.  Note that the
'client' then takes on some window management functions.
  This would allow for more sophisticated externals to be developed which
would work with any/all browsers - without any porting.  Further, these
external programs could then run remotely as 'conversion services'.  People
would not even have to worry about having a local copy of a particular
external, if there were a site willing to serve them.  Also, we could then
potentially interactively inline any interesting format such as TeX or
postscript.
  This would be particularly useful for such things as visualizing
remote data sets processed on remote supercomputers.  For instance, suppose I
connect to a weather data server, or one of the NASA sites containing planetary
data, and decide I would like to massage the data I've located.  The client
starts up an 'external viewer' on one of the NCSA supercomputers (or wherever
I have access) and passes it the URL of my chosen data set.  The external
sucks the data over, sends an HTML control panel to my browser for display,
and then waits for GUI events indicating which operations should be performed.

Off the top of my head...

Common Client Interface
  Client-to-External
     - Here is some data
       - what the external does with the data of course depends on
       the nature of that service
     - Here is a URL, please retrieve the contents as data
     - Here is an event
       - single click
       - double click
       - refresh (one of your windows has just become exposed)
       - etc.
     - Kill yourself

  External-to-Client
     - Here is an HTML document, please display it
     - Create a new window for me please
     - Delete my window, win1, please
     - Resize my window, win1, to size 5x10
     - interpret links yourself, OR notify me of link activation events

Etc.

Chris
-----------------------------------------------------------------------
Christopher McRae			            mcrae@ora.com
President, SIGWEB                                   415/242-9623
Project Manager
O'Reilly & Associates, Publishers                   510/540-6036