Many Web browsers maintain a ``cache'', in which they store the page corresponding to a URL when it is first fetched. If the URL is requested again, they will check the cache before contacting the server: if the contents of the URL is there, they will use that instead of asking the server for a new copy.
This can cause problems for WOM, since the user may find themselves
getting an out-of-date page. Since the WOM application relies on some URLs
to tell it to update instances (namely instance-selection URLs and
state-change URLs), this can also lose it information and cause various
instances to get out of sync with each other. One can use JavaScript to
control the browser's caching behaviour, and we have experimented with
this. Apart from that though, the author needs to be able to
specify that the output from some instances must never be cached. Luckily,
this can be done by sending back an HTTP Expires:
header with a date and
time attached. If this is in the past, the browser will assume the output
it precedes to be out of date whenever it checks the cache, and will
always request a new copy.