RE: soap:header extensibility with mU primer example

Sorry Dave, but we don't find this motivation very compelling.  This
seems like the clumsiest way imaginable to introduce an incompatible
version.  We have a variety of other mechanisms that could be employed,
including introducing a new name for the new operation, introducing a
new endpoint, or adding an app-level version identifier into the message
body with appropriate failure semantics.  If this is the best motivation
you can come up with, we would rather see the mU capability removed.


Speaking for Microsoft not as chair,




From: [] On
Behalf Of David Orchard
Sent: Tuesday, July 12, 2005 3:48 PM
Subject: soap:header extensibility with mU primer example


A proposed section for the Primer if people accept the example and


Additional  Additional mandatory elements in header.


A primary motivation for soap:mustUnderstand is to enable a client to
ensure that a service understands a soap header block that the client
sends.  Imagine that the reservation interface is controlled by a 3rd
party such as a travel consortium.  The travel consortia decides to make
the NumberOfGuests a soap header block rather than part of the body,
perhaps on the initial version or a subsequent version.  There are a
variety of reasons for this.  The extension could be handled in a well
factored design at the service by a specialized piece of software.   A
3rd party specifying the header blocks is why Web Service specifications
will often require that the mustUnderstand flag is set to true. 


The binding using mustUnderstand is:


<operation ref="tns:opCheckAvailability">


         <wsoap:header wsoap:mustUnderstand="true"




Any client that uses the new interface will set the soap:mustUnderstand
attribute in the message.  If the service receiving the messages does
not understand the extension, it will fault.






Received on Wednesday, 13 July 2005 18:00:32 UTC