W3C home > Mailing lists > Public > www-ws-desc@w3.org > May 2004

Re: proposal: minor syntax improvement for soap fault bindings

From: John Kemp <john.kemp@nokia.com>
Date: Fri, 07 May 2004 10:45:30 -0400
Message-ID: <409BA10A.8060201@nokia.com>
To: ext <paul.downey@bt.com>
Cc: pyendluri@webmethods.com, www-ws-desc@w3.org

Hi,

I would just note that with all these proposals, we are losing some 
implicit semantics enforced by schema, and I'm not quite sure why we 
need to do that.

As I understand it (and please correct me if I'm wrong), the main reason 
for flattening the status code hierarchy would be to allow minimal fault 
instances to be created. However, even with a status code hierarchy 
possible in *schema*, there would be no requirement for any application 
to use the whole hierarchy in any individual instance, and I think we 
would lose something by flattening that structure, unless we defined the 
semantics of the flattened list of sub-codes in specification text.

So, I guess I'm saying that I prefer having the *ability* to use nested 
status codes, where the structure is visible in the document instance - 
I think some applications may find it useful to have the ability to be 
wordy in their status reporting, even if most don't. Unless there is 
some other good, but as yet unstated reason, I would argue that we 
should not flatten the structure in schema purely for the purpose of 
creating small instances, which is to say I'm pretty much in agreement 
with Sanjiva's original proposal.

An example:

<fault ref="some-ns:RequestID">
  <wsoap:code value="some-ns:Failure" description="Request Failed"/>
    <wsoap:code value="some-ns:Timeout" description="Database Server 
Connection Timeout">
      <wsoap:code value="some-ns:ConnectionFailure" description="Could 
Not Connect To Database"/>
    </wsoap:code>
  </wsoap:code>
</fault>

But one could always just say:

<fault ref="some-ns:RequestID">
  <wsoap:code value="some-ns:DatabaseServerTimeoutFailure"/>
</fault>

If one wished to be brief.

However, if people also want to be able to stick a list of Qnames in the 
first status code element, we could perhaps allow that too, but we would 
need to either say explicitly that there is no implication of structure 
in the Qname list, or define some associated structure semantics (ie. 
that the list was in fact a structured hierarchy of codes).

Cheers,

- JohnK

Paul wrote:

>thanks! i further suggest applying Jacek's rule of never 
>having an element or attribute called 'value' and hoist the 
>code and subcode attributes into fault meaning:
>    <fault ref="xs:QName" >
>      <documentation />?
>      <wsoap:code>
>        <wsoap:value>xs:QName</wsoap:value>
>        <wsoap:subcode>
>          <wsoap:value>xs:QName</wsoap:value>
>          <wsoap:subcode>...</wsoap:subcode>
>        </wsoap:subcode>?
>      </wsoap:code>
>    </fault>*
>becomes:
>    <fault ref="xs:QName" 
>         wsoap:code="xs:QName" 
>         wsoap:subcodes="list of xs:QName" />
>      <documentation />?
>    </fault>*
>downside is we can no longer document individual fault codes, 
>but that seems to be no great loss to me since this is all 
>about grouping and routing codes to a meaningful interface fault.
>Paul
> 
>
>	-----Original Message----- 
>	From: www-ws-desc-request@w3.org on behalf of Prasad Yendluri 
>	Sent: Thu 06/05/2004 19:05 
>	To: www-ws-desc@w3.org 
>	Cc: 
>	Subject: Re: proposal: minor syntax improvement for soap fault bindings
>	
>	
>	I guess we kinda settled on the original proposal from Sanjiva on the call today but, I like this improvement. It satisfies the intent of Roberto's suggestion while keeping the separation between code and sub-codes.
>	
>	Prasad
>	
>	-------- Original Message -------- 
>Subject: 	RE: proposal: minor syntax improvement for soap fault bindings	
>Resent-Date: 	Thu, 6 May 2004 12:39:37 -0400 (EDT)	
>Resent-From: 	www-ws-desc@w3.org	
>Date: 	Thu, 6 May 2004 17:39:07 +0100	
>From: 	<paul.downey@bt.com> <mailto:paul.downey@bt.com> 	
>To: 	<Roberto.Chinnici@Sun.COM> <mailto:Roberto.Chinnici@Sun.COM> , <sanjiva@watson.ibm.com> <mailto:sanjiva@watson.ibm.com> 	
>CC: 	<www-ws-desc@w3.org> <mailto:www-ws-desc@w3.org> 	
>
>	as suggested, verbally on the telcon:
>	
>	   <wsoap:code value="xs:QName" subcodes="list of xs:QName" />
>	
>	solves the problem of the first value having a different meaning 
>	to the rest of the list.
>	
>	Paul
>	
>	
>	-----Original Message-----
>	From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org]On
>	Behalf Of Roberto Chinnici
>	Sent: 04 May 2004 01:05
>	To: Sanjiva Weerawarana
>	Cc: www-ws-desc@w3.org
>	Subject: Re: proposal: minor syntax improvement for soap fault bindings
>	
>	
>	
>	How about a further improvement? Instead of
>	
>	       <wsoap:code value="xs:QName">
>	         <wsoap:subcode value="xs:QName">
>	           <wsoap:subcode>...</wsoap:subcode>
>	         </wsoap:subcode>?
>	       </wsoap:code>
>	
>	we do:
>	
>	       <wsoap:code value="list of xs:QName">
>	       </wsoap:code>
>	
>	I.e. the value of @code is a list of QNames, the first one being
>	the code and the other ones its subcodes. And of course we cshould
>	constrain the list to have length > 0.
>	
>	Roberto
>	
>	
>	Sanjiva Weerawarana wrote:
>	> I suggest we move wsoap:code/wsoap:value to an attribute:
>	> 
>	> That is, instead of:
>	> 
>	>       <wsoap:code>
>	>         <wsoap:value>xs:QName</wsoap:value>
>	>         <wsoap:subcode>
>	>           <wsoap:value>xs:QName</wsoap:value>
>	>           <wsoap:subcode>...</wsoap:subcode>
>	>         </wsoap:subcode>?
>	>       </wsoap:code>
>	> 
>	> we do:
>	> 
>	>       <wsoap:code value="xs:QName">
>	>         <wsoap:subcode value="xs:QName">
>	>           <wsoap:subcode>...</wsoap:subcode>
>	>         </wsoap:subcode>?
>	>       </wsoap:code>
>	> 
>	> This makes the syntax more consistent with the rest of the
>	> SOAP binding which is rather attribute-heavy.
>	> 
>	> Sanjiva.
>
>  
>
Received on Friday, 7 May 2004 10:46:03 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:31 GMT