Re: Status: -> Progress:

hoesel@chem.rug.nl (frans van hoesel)
Errors-To: listmaster@www0.cern.ch
Date: Wed, 11 May 1994 14:06:12 +0200
Errors-To: listmaster@www0.cern.ch
Message-id: <9405111202.AA00582@Xtreme>
Errors-To: listmaster@www0.cern.ch
Reply-To: hoesel@chem.rug.nl
Originator: www-talk@info.cern.ch
Sender: www-talk@www0.cern.ch
Precedence: bulk
From: hoesel@chem.rug.nl (frans van hoesel)
To: Multiple recipients of list <www-talk@www0.cern.ch>
Subject: Re: Status: -> Progress:
X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
Content-Type: text
Content-Type: text
X-Mailer: ELM [version 2.4 PL5]
X-Mailer: ELM [version 2.4 PL5]
> 
> Paul "S." Wain writes:
> 
> > Anyone for HTTP/1.1 ? :)
> 
> It would be useful to start a list of features for a next major
> release of HTTP, e.g:
> 
>     o   Secure HTTP
>     o   Anonymous Session Ids
>     o   Additional Logging info
>     o   Multi-GETs
> 
> Any other ideas?
 Hi dave,

      o   dynamic pages

well that's too short perhaps, so let me tell you a bit more.
What I would *love* to have is some html tag to tell the browser that
the next elements are dynamic and can change contents on request of the server
so something like: 
<dynamic name="somelabel">this text can change</dynamic>
or the current rate for the dutch guilder is <dynamic name=rate>$0.49</dynamic>

anything should be allowed between <dynamic> and </dynamic>, even other
html tags such as images.

How could this communicate?
the easiest thing to do, is not to close the connection for dynamic pages,
but let the server send something like:
<head>...</head><body>....</body>  (at this point the client should
display the current page) followed by (at much later times, say when the
dollar rate changes)<update name=rate>$0.51</update>
at that point the client will update the page.
As soon as the client start viewing othe pages, the connection drops. (or
when the server thinks that a client has seen enough)

this sheme would work, but would easely overload the server with too many
open connections.

Much easier perhaps (and not as powerfull) is to have the client to
actively request the update, in which case the client must know when to do
so. How can it know? in general it cannot know, but changing the syntax
to :
<dynamic time=200 src="URL...">$0.49</dynamic> could tell the client
to actively request an update after 200 seconds. 
and replace whatever is in between <dynamic></dynamic> with what it gets
from the url in the src=URL.

other ways are possible, but probably not easy to implement on browsers
without UNIX (one could think of the client to partially implement a
aerver, so the real server could simply close the initial connection and as
soon as the dollar rate changes send a request to the client)

All in all I think <dynamic time =200 src=URL> is feasable *NOW* and much
more powerfull then one might think at first sigth.
/* dynamic loading of images, status information from a long database
 search, having an inlined image and change it to an inlined mpeg (I know
 we don't have inlined mpegs yet in most browsers */
The time=200 should be treated as an repeat value, so the client will
request the dynamic part every 200 seconds, but that time should change
whenever the result from a dynamic load contains a mime header with a
valid expires. That 'expires' could be well into the next century so
the client will stop requesting dynamic loads from the server)

In fact I would have implemented this myself for mosaic, but the NCSA people
are not the most willing-to-change people. (I have had some unpleasant
experiences with my postscript module. In fact I have a request to support
A4 paper, and still haven't heard from them at all)

- frans