- Existing WWW browsers can act as client software.
- Document Exchange Model document retrieval is supported.
- Clients are not required to support inbound HTTP connections.
|
|||||||||
WaterkenTM WebHTTP Binding2003-03-22This specification defines how the WaterkenTM Web Abstract Messaging Protocol is bound to HTTP. The binding leverages the existing WWW infrastructure. Abstract
The
OverviewDesign goals
WWW browser as a human-to-messaging protocol interfaceThe WaterkenTM Web calculus defines an interface model based on a web of typed nodes. The HTTP binding must be defined such that a User Interface (UI) can be constructed for an application by defining an HTML rendering of the node types. This HTML rendering acts as a "message generator", allowing the user to send the messages needed to traverse the web or to invoke a target lambda. Supporting this type of HTML user interface means that each feature of the WaterkenTM Web Abstract Messaging Protocol must be exposed in a way that is supported by existing WWW browsers. Document Exchange Model
The WWW is based on Document Exchange Model (DEM) document retrieval. In the DEM, documents are
retrieved by dereferencing a URI. The existing WWW infrastructure is optimized to support these DEM
queries by caching
To support interoperation with other HTTP based software, the HTTP binding must encode all the
information for a WaterkenTM Web calculus
Homeless clientsMost existing WWW client software does not support any server functionality. For example, a typical WWW browser does not allow a web site to send a delayed response to the browser. In addition to this lack of software support, many clients are behind a network firewall that prevents all inbound TCP/IP connections. Most WWW clients are operating as if they have no home address at which to receive return mail. To accommodate homeless clients, the HTTP binding must match the request-response style defined by HTTP. DescriptionThis section describes how the HTTP binding meets the network protocol requirements specified in the WaterkenTM Web Abstract Messaging Protocol specification. Locating the server host
HTTP uses the Server authenticationServer authentication must be provided by a network protocol running underneath HTTP, such as SSL. Transport secrecyTransport secrecy must be provided by a network protocol running underneath HTTP, such as SSL. Sending a request
Each request
The
The
The
The Receiving a response
The response
The
The
The
A response has no
The Required HTTP
|
Status-Code |
schema |
|---|---|
| 404 | <http://waterken.com/amp/NotFound> |
Other appropriate HTTP Response Status-Codes SHOULD be used to report errors
in decoding a Request.
A server may support a variety of Media-Types, but is required to support at least the Media-Types listed here.
text/xml
This Media-Type indicates that the message-body is encoded using the
XML surface syntax of the WaterkenTM
Doc Document Model.
If a server supports any of the optional Media-Types listed here, it MUST do so in a way compliant with this specification.
application/x-www-form-urlencoded
This Media-Type indicates that the message-body is encoded using the
www-form surface syntax of the
WaterkenTM Doc Document Model.
application/code
This Media-Type indicates that the message-body is encoded using the
code surface syntax of the WaterkenTM
Doc Document Model.
GET request
GET /example/cl3d5xjtlvjtba2aqceks6ymwe?path=balance/ HTTP/1.1 Host: server.waterken.com Accept: text/xmlNormal GET response
HTTP/1.1 200 OK Content-Type: text/xml;charset="UTF-8" Content-Length: 50 <doc schema="http://waterken.com/Integer">3</doc>Broken GET response
HTTP/1.1 404 Not Found Content-Type: text/xml;charset="UTF-8" Content-Length: 0 POST request
POST /example/cl3d5xjtlvjtba2aqceks6ymwe?path=withdraw/&mid=3u6k4dlbitylyuplg5ubyzacwy HTTP/1.1
Host: server.waterken.com
Accept: text/xml
Content-Type: text/xml;charset="UTF-8"
Content-Length: 69
<list>
<doc schema="http://waterken.com/Integer">1</doc>
</list>
Normal POST response
HTTP/1.1 200 OK
Content-Type: text/xml;charset="UTF-8"
Content-Length: 143
<doc schema="http://waterken.com/doc/pointer/Link">
<target>https://server.waterken.com/example/o4zpok3s3ud3acx3jis3nawct4</target>
</doc>
EXPECT request
EXPECT /example/cl3d5xjtlvjtba2aqceks6ymwe HTTP/1.1
Host: server.waterken.com
Accept: text/xml
Content-Type: text/xml;charset="UTF-8"
Content-Length: 99
<list>
<doc schema="http://waterken.com/uri/URI">http://waterken.com/iou/Account</doc>
</list>
Normal EXPECT response
HTTP/1.1 200 OK
Content-Type: text/xml;charset="UTF-8"
Content-Length: 143
<doc schema="http://waterken.com/doc/pointer/Link">
<target>https://server.waterken.com/example/cl3d5xjtlvjtba2aqceks6ymwe</target>
</doc>
EXTRACT request
EXTRACT /example/cl3d5xjtlvjtba2aqceks6ymwe?path=balance HTTP/1.1 Host: server.waterken.com Accept: text/xmlNormal EXTRACT response
HTTP/1.1 200 OK
Content-Type: text/xml;charset="UTF-8"
Content-Length: 143
<doc schema="http://waterken.com/doc/pointer/Link">
<target>https://server.waterken.com/example/6xexrsaiwbt63742pkfex6bqra</target>
</doc>
SETTLE request
SETTLE /example/6xexrsaiwbt63742pkfex6bqra HTTP/1.1
Host: server.waterken.com
Accept: text/xml
Content-Type: text/xml;charset="UTF-8"
Content-Length: 170
<list>
<doc schema="http://waterken.com/doc/pointer/Link">
<target>https://client.waterken.com/example/3xe5w7hgenjdbuqll3b5tknqbm</target>
</doc>
</list>
Normal SETTLE response
HTTP/1.1 200 OK Content-Type: text/xml;charset="UTF-8" Content-Length: 46 <doc schema="http://waterken.com/Void"></doc> |
|
top
Copyright 2002 - 2003 Waterken Inc. All rights reserved. |