Subject: Bindings and Other Methods (Section 10)

From: "Slein, Judith A" <[email-masked]>
Date: Wed, 15 Sep 1999 15:26:19 -0400

In Section 10 of the Bindings spec we specify how bindings interact with the
vast majority of HTTP and WebDAV methods (GET, HEAD, PUT, POST, OPTIONS,
PROPFIND, PROPPATCH, ORDERPATCH).

We would like to say the simple, straightforward thing:  That for any of
these methods, the results of applying the method through one binding are
identical to the results of applying the same method with the same headers
and body through another bindings to the same resource.

What prevents us from saying this are executable resources, which generate
responses dynamically and may be sensitive to which Request-URI is used to
access them.  If we try to take these executable resources into account, we
are reduced to saying things that are so open-ended that they place no
enforceable constraints on the behavior of GET, PUT, etc., when applied
through different bindings to the same resource.

So in the interest of being able to place useful constraints the behavior of
these methods on alternative bindings to the same resource, we propose to
say:

The results of applying method XXX through one binding are identical to the
results of applying XXX with the same headers and the same message body
through any other binding to the same resource.  The server MUST fail any
BIND request for which it cannot guarantee this behavior.

The upshot of this statement will be that it will not be possible to create
bindings to executable resources that produce dynamic results.

--Judy

Judith A. Slein
Xerox Corporation
[email-masked]
(716)422-5169
800 Phillips Road 105/50C
Webster, NY 14580

---

From: John Stracke <[email-masked]>
Date: Wed, 15 Sep 1999 15:42:14 -0400

"Slein, Judith A" wrote:

> e would like to say the simple, straightforward thing:  That for any of

Why exactly is this a problem? Me, I'd consider it a feature; if I write code
that's sensitive to the Request-URI, it's probably for a good reason.  I may
want to be able to write a script once and place bindings to it in different
places that behave differently according to their location.  In fact, I *have*
written such a script.  On my personal site, I don't have access to the logs,
so I've placed index.cgi scripts in various directories that I want to monitor;
they log the hit and return a 302 to redirect to Index.html.  Since I didn't
want to maintain N copies of the script, most of them are symlinks.  Since the
302 requires an absolute URI, the script looks at the Request-URI to figure out
where to redirect to.

--
/==============================================================\
|John Stracke    | http://www.ecal.com |My opinions are my own.|
|Chief Scientist |=============================================|
|eCal Corp.      |Round up the usual disclaimers.              |
[email-masked]|                                             |
\==============================================================/