Possible bug in SOAP 1.2 description of fault generation

While reviewing the processing model section of SOAP 1.2 [1], I noticed 
that it says:

"Failure is indicated by the generation of a fault (see 5.4 SOAP Fault). 
SOAP message processing MAY result in the generation of at most one 
fault."

Taken literally, that seems to say:  "you probably want to generate at 
most one fault, but we don't strictly preclude the alternative, which 
would be generating more than one fault."   That's not what we meant. I 
think what we intended would be better covered by either of the following 
two rewordings:

* "Failure is indicated by the generation of a fault (see 5.4 SOAP Fault); 
SOAP message processing MUST result in the generation of at most one fault 
for each message processed."

-or-

* "Failure is indicated by the generation of a fault (see 5.4 SOAP Fault). 
SOAP message processing MAY result in the generation a SOAP fault; more 
than one SOAP fault MUST NOT be generated when processing a SOAP message."

Note that in any case, the paragraph that follows correctly says:

"A message may contain or result in multiple errors during processing. 
Except where the order of detection is specifically indicated (as in 2.4 
Understanding SOAP Header Blocks), a SOAP node is at liberty to reflect 
any single fault from the set of possible faults prescribed for the errors 
encountered. The selection of a fault need not be predicated on the 
application of the "MUST", "SHOULD" or "MAY" keywords to the generation of 
the fault, with the exception that if one or more of the prescribed faults 
is qualified with the "MUST" keyword, then any one fault from the set of 
possible faults MUST be generated."

I don't think anyone is confused about what we meant, which is: generate 
at most one fault.  I wonder whether a rewording should be issued with the 
next set of errata?  Does anyone remember if there was a reason we worded 
it this way?  Thanks.

Noah

[1] http://www.w3.org/TR/soap12-part1/#procsoapmsgs

--------------------------------------
Noah Mendelsohn 
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------

Received on Tuesday, 14 February 2006 15:37:31 UTC