Re: Keeping HTML Simple & Format negotiation between Browser & Server

Pei Y. Wei (wei@xcf.berkeley.edu)
Fri, 28 May 93 17:10:03 -0700


Something like ISMAP is what you'd want for applications like, say,
a cartographic service, where the user could select an area (mouseDown
for x0,y0, mouseUp for x1,y1), and have the selected area sent to the
server, which will return the image (or vectors) for the new area.
And in the future (with common availability of 3D pointing devices :-)
this should be easily extensible to 3D-space selection.

This sort of application would be tedious (probably impossible for 3D case)
and clumsy to implement with the area-overlay-buttons approach.

However, one could think of lots of other applications where it would
be easier and more appropriate to use area-overlay-buttons. Just look at
the numerous HyperCard stackwares that use ``invisible fields'' to
implement highly neat effects. This approach, however hard-coded but
no more than ``HREF='' is hard-coded, has the benefits of no necessary
dependence on a server.

So, as I've indicated to Tony before off www-talk, I feel that both are
necessary and have their respective uses. In HMML (my working version
anyway-- have to sync it with Dave), there's a FIGURE tag which could
be used in the following ways (fictitious services):

As with <IMG>:

<FIGURE SRC="http://smithsonian.gov/gallery/irises.gif"
TYPE="image/gif">

Includes a figure specific caption:

<FIGURE SRC="http://smithsonian.gov/gallery/irises.gif"
TYPE="image/gif">
<FIGCAP>Irises, 1889, Vincent Van Gogh</FIGCAP>
</FIGURE>

Includes the actual figure data:

<FIGURE TYPE="application/tex">
<FIGDATA>
...the actual TeX notation...
</FIGDATA>
</FIGURE>

An example of ISMAP usage -- server generates and returns the selected
topographic region in postscript form:

<FIGURE SRC="http://usgs.gov/maps/topographic.ps"
TYPE="application/postscript"
ISMAP>

An example of invisible/see-thru buttons overlaying an image -- face.gif
is visible, and has two invisible area oriented anchors pointing to
eyes.gif and mouth.gif respectively. Probably unnecessary, but WIDTH &
HEIGHT could be specified to handle scaling. Also, perhaps <FIGA> should
simply be <A>. :

<FIGURE SRC="http://sesame-st.org/whatis/face.gif" TYPE="image/gif"
WIDTH=100 HEIGHT=100>
<FIGA HREF="http://sesame-st.org/whatis/eyes.gif" TYPE="image/gif"
x0=20 y0=10 x1=80 y1=30>
<FIGA HREF="http://sesame-st.org/whatis/mouth.gif" TYPE="image/gif"
x0=40 y0=70 x1=60 y1=80>
<FIGCAP>Spy a face</FIGCAP>
</FIGURE>

I would, and I'm sure Dave would, appreciate constructive arguments
for or against <FIGURE> as described above. It's of course still very
open to suggestions at this point.

Pei Y. Wei
O'Reilly & Associates
Digital Media Group
pei@ora.com