Binding to SOAP Version 1.2 to HTTP Extensions

The purpose of this document is to try and express a SOAP Version 1.2 message (i.e. the XML Infoset of the message) using the HTTP Extension Framework.

Problems:

This is the deranged ramblings of a pair of lunatics. Don't read much beyond that for now.

Get StockQuote Example Signed and Compressed

POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "http://example.org/2001/06/quotes"

<env:Envelope xmlns:env="http://www.w3.org/2001/06/soap-envelope" >
 <Header>
   <signMe xmlns="http://example.com/signMeNS" mustUnderstand="true">
     <pubKey>asdfqwerdfglfgjklfdg3434h34th34</pubKey>
   </signMe>                                       
   <foo:compressMe xmlns:foo="http://example.com/compressMeNS" foo:happy="true">
     <foo:seedDictionary foo:href="http://example.com/XMLdict1" />
     <foo:algorithm>weak</foo:algorithm>
   </foo:compressMe>
 </Header>
 <env:Body>
  <m:GetLastTradePrice 
        env:encodingStyle="http://www.w3.org/2001/06/soap-encoding"
        xmlns:m="http://example.org/2001/06/quotes">
    <symbol>DIS</symbol>
  </m:GetLastTradePrice>
 </env:Body>
</env:Envelope>

could be encoded as a GET

M-GET /StockQuote/DIS HTTP/1.1
Host: example.com
Man: "http://example.com/signMeNS";ns=03, "http://example.com/cool-ordering";ns=99
Opt: "http://example.com/compressMeNS";ns=29
03-pubKey: asdfqwerdfglfgjklfdg3434h34th34
29-seedDictionary: http://example.com/XMLdict1
29-happy: true
29-algorithm: weak
99-order: 03 29
Accept: text/xmlp+xml

or perhaps an automated transformation

M-GET /StockQuote/DIS HTTP/1.1
Host: example.com
Man: "http://example.com/SOAP-xfer";ns=03
03-SOAP-Header-01: ns=http://example.com/signMeNS name=signMe: 
Opt: "http://example.com/SOAP-xfer";ns=29
29-SOAP-Header-02: ns=http://example.com/compressMeNS name=compressMe: 
Accept: text/xmlp+xml

See Also

SOAP vs. HTTP Extensions

Eric Prud'hommeaux, Hugo Haas
$Id: soap12-httpext.html,v 1.4 2001/09/05 16:11:11 eric Exp $