Re: comments on HTTP draft of 5 Nov 93

Jim Davis (davis@dri.cornell.edu)
Wed, 8 Dec 1993 13:30:42 -0500


To continue the discussion on SPACEJUMP and TEXTSEARCH. I thank
Tony Sanders for clarifying the role of SPACEJUMP and TEXTSEARCH.

If nothing else, the RFC should be changed to include his words,
or something similar.

But it would seem that SPACEJUMP and TEXTSEARCH are not "methods"
at all, but rather a pair of keywords that inform us of the
capabilities of a particular server or document.

The meaning of these keywords is that server is prepared to
accept URLs with particular syntaxes and interpret them according
to a set of shared conventions.

As I see it, there are three such conventions currently in use.
All of them use a question mark to separate the "main" portion
of the URL from the search or index parameters. They differ in
the form of the parameters

1) ISINDEX: parameters are a list of keywords, separated by +

2) ISMAP: parameters are X and Y coordinates, separated by comma

3) FORM: parameters are pairs of NAME=VALUE, separated by ampersand.

It seems to me that TEXTSEARCH means ISINDEX will work, and SPACEJUMP
means ISMAP will work, and there is no way to say that FORM will work.

So here follow a whole slew of criticisms

1) The names are wrong - they should be changed to reflect the function,
i.e. indicating what kinds of indexing are allowed. Possible names are
INDEX_KEYWORDS, INDEX_2D, INDEX_FORM

2) The association with GET is wrong. It seems to me that just as one
could use spatial indexing to GET a document one could use spatial
indexing to POST (or PUT) a document. Have you seen the world map demo,
which shows a point for each site that's queried the server? Might
one not want to implement this by POSTing to the X Y coordinates?

So I am trying to argue here that "SPACEJUMP" and "TEXTSEARCH" are
really trying to tell you something about the document, not about
GET per se.

3) It is very unlikely that these two keywords convey useful information,
because most likely, the way you do a GET is by first pulling some
other document from the server. Do we really expect it to happen
that someone will obtain a URL, then do a HEAD on it (to find out
whether they can use ISMAP syntax to address it), and then do a GET?
Isn't it much more likely that they will obtain the URL through
a client, and be seeing e.g. a map or a picture, along with instructions
to click on it? And besides that, unless you know the interpretation
of the spatial dimensions, how could you even know what coordinates to send?

Imagine it: I tell you that I have a URL you can index with an X Y coordinate,
lets even say that I tell you it's a map. How do you know what X and Y
to pick, until you display it on a browser?

In summary - SPACEJUMP and TEXTSEARCH don't convey useful information,
have the wrong names for the meanings that they do have, and should
not be considered methods. They should be removed.