Tunneling

On Fri, May 09, 2003 at 10:12:22AM -0700, Dave Hollander wrote:
> Roger, I like your tunneling verb phrasing...it is clear.

Yes, very.

> "tunneling verbs" is a key concept and I would love to understand
> how REST people percieve it.
> 
> Is it REST/uniform interface if the verb is GET but there is another 
> verb "tunneled" in the payload and responded to by the application? 
> 
> daveh
> 
> I assume yes, of course...but you know what assume means.

Heh. 8-)

But no, if you tunnel a non-uniform method through a uniform method,
then the end result is a non-uniform method.

I find it helps to step back and look at what some call the "wire
contract"; the expectation, sitting above a TCP connection, of what can
be asked to occur, and what can be expected to happen as a result. 
"Tunneling" refers to ignoring whatever wire contract existed when you
began (i.e. when you opened a connection with some application
protocol), and then building a new contract which replaces it.  REST
prescribes a wire contract with uniform semantics.  If it is ignored,
the only way you can become RESTful again is to create a new wire
contract with uniform semantics.  i.e. something akin to tunneling HTTP
through HTTP(!).

MB
-- 
Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
Web architecture consulting, technical reports, evaluation & analysis
  Actively seeking contract work or employment

Received on Friday, 9 May 2003 13:56:34 UTC