PASWA in terms of a binding mechanism

In fulfillment of our action item from the telcon of 5/21, here is a 
description of PASWA in terms of a binding mechanism.

On the sender side the *abstract process* is as follow:
1 - The application adds any binary attachment to the SOAP message 
infoset as base64 encoded content.
2 - The binding looks for any base64 encoded data in the message. If 
occurences of base64 encoded data are found, it adds an 
"xbinc:DoInclude" header to the message, convert all occurences to 
"xbinc:Include" elements and create an attachment containing the decoded 
data of each occurence.

On the receiver side, the *abstract process* is as follow:
1 - The binding looks for the presence of a "xbinc:DoInclude" header. If 
it is found, it removes it, and replace each "xbinc:Include" element by 
the base64 encoded content it refers to.
2 - The application may retrieve any attachment as a base64 encoded 
content contained in the SOAP message infoset.

Notes:
- Efficient implementations of these processes will provide ways for 
directly transfering the binary data from the application to the binding 
(or the reverse) without having to pass through the encoding/decoding 
process.
- The *abstract representation* of binary attachments as base64 encoded 
content allows non PASWA enabled SOAP features to handle correctly the 
message. For example a signature feature will be able to sign the 
message by signing the binary attachment as base64 encoded content (for 
efficient implementation, this will require a base64 encoding step).
- Some SOAP feature can also have efficient implementations by accessing 
directly the binary data and not asking for the base64 encoded data. For 
example, a PASWA enabled encryption feature could encrypt directly the 
binary data. This same PASWA enabled encryption feature could also 
transfer the encrypted data directly as binary to the binding instead of 
storing it in the SOAP message as base64 content.

Hervé and Jean-Jacques

Received on Wednesday, 28 May 2003 11:54:13 UTC