- From: FABLET Youenn <fablet@crf.canon.fr>
- Date: Thu, 11 Jul 2002 09:25:10 +0200
- To: Jeffrey Schlimmer <jeffsch@windows.microsoft.com>, www-ws-desc@w3.org
- Message-ID: <3D2D32D6.8000300@crf.canon.fr>
+1 for eliminating repetitions in the binding. I would suggest a complement/alternative to your proposal with something like defining the "operation scope" of a soap:operation EII in the binding. This way, a soap:operation EII would be applicable for more than one operation defined in the portType. Maybe by adding a target AII where to say that a particular soap:operation EII is used (by default)/(for operation o1, o2 and o3). examples: 1) <soap:binding> <soap:operation target="soap:default"> <input> <soap:body use="encoded" namespace="http://example.com/stockquote" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </input> <output> <soap:body use="encoded" namespace="http://example.com/stockquote" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </output> </soap:operation> </soap:binding> 2) <soap:binding> <soap:operation target="o1 o2 o3 "> <input> <soap:body use="encoded" namespace="http://example.com/stockquote" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </input> <output> <soap:body use="encoded" namespace="http://example.com/stockquote" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </output> </soap:operation> </soap:binding> Youenn Jeffrey Schlimmer wrote: >In the case where operations are all bound in the same way, the existing >SOAP binding is repetitious. A straightforward way to simplify this for >the common case is to allow the SOAP binding attribute information items >(AII) to be placed as defaults on the soap:binding element information >item (EII) define that AII placed on children of soap:binding would >override the default, and allow the soap:operation EII to be omitted if >they do not override any defaults. >This is not a proposal to eliminate the ability to define an >operation-by-operation binding; it is only a proposal to simplify the >default case where all operations within a portType are bound the same >way. > >The table below summarizes where WSDL 1.1 defines the SOAP binding AII. > >EII \ AII @style @use @encodingStyle @namespace >-------------------------------------------------------- >soap:binding OK >soap:operation OK[*] >soap:body OK OK OK >soap:header OK OK OK >soap:fault OK OK OK >soap:headerFault OK OK OK > >Where [*] overrides value from parent. > > >The proposal is to change the definition of the SOAP binding AII as >shown in the table below. > >EII \ AII @style @use @encodingStyle @namespace >-------------------------------------------------------- >soap:binding OK OK OK OK >soap:operation OK[*] >soap:body OK[*] OK[*] OK[*] >soap:header OK[*] OK[*] OK[*] >soap:fault OK[*] OK[*] OK[*] >soap:headerFault OK[*] OK[*] OK[*] > > >EXAMPLE > >In the default case, where all the operations are bound the same way, >this should simplify the binding significantly. For example, in WSDL >1.1, a SOAP rpc/encoded example in WSDL 1.1 would look like: > ><binding name="StockQuoteSoapBinding" > type="tns:StockQuotePortType"> > <soap:binding transport="http://schemas.xmlsoap.org/soap/http" > style="rpc" /> > <operation name="GetTradePrice"> > <input> > <soap:body use="encoded" > namespace="http://example.com/stockquote" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> > </input> > <output> > <soap:body use="encoded" > namespace="http://example.com/stockquote" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> > </output> > </operation> > ... ></binding> > >Where ... has to be repeated for each operation in the portType. > >By contrast, the same example given the proposal would look like: > ><binding name="StockQuoteSoapBinding" > type="tns:StockQuotePortType"> > <soap:binding transport="http://schemas.xmlsoap.org/soap/http" > style="rpc" > use="encoded" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > namespace="http://example.com/stockquote" /> ></binding> > >A SOAP document/literal example given the proposal would look like: > ><binding name="StockQuoteSoapBinding" > type="tns:StockQuotePortType"> > <soap:binding transport="http://schemas.xmlsoap.org/soap/http" > style="document" > use="literal" /> ></binding> > >EOF >
Received on Thursday, 11 July 2002 03:25:59 UTC