- From: Henrik Frystyk Nielsen <henrikn@microsoft.com>
- Date: Mon, 21 Oct 2002 10:42:57 -0700
- To: "Kirill Gavrylyuk" <kirillg@microsoft.com>, <xml-dist-app@w3.org>
- Cc: "Martin Gudgin" <mgudgin@microsoft.com>
Hi Kirill, Looking at issue 371 [0], I think we may have an answer for this particular case. Whether we have answers for all possible cases in the spec is hard to say but hopefully we do cover them all. The short answer is that the processing of individual header blocks does not have to be consistent, i.e. result in the same outcome, as long as the basic SOAP processing model is followed. The slightly longer explanation is based on the processing model description in section 2.6 [1] which states that before a SOAP node starts processing a message then it must check that it understands all instances of header blocks with mU=true. In addition, the term "understanding" is defined in section 2.4 as [2]: "A SOAP header block is said to be understood by a SOAP node if the software at that SOAP node has been written to fully conform to and implement the semantics conveyed by the combination of [local name] and [namespace name] of the outer-most element information item of that header block" The description in section 2.4 [2] is only intended to define the impact of the mustUnderstand attribute on a single header block, not on the processing of the overall message. While the mU check ensures that a header block is understood, it does not guarantee that the processing of the header block will succeed. This depends on the specific semantics of the individual header block, or potentially on the presence or lack thereof of multiple header blocks in the same message. For example, one could imagine a SOAP module that only allowed one instance of a header block in a particular message. Proposal: We could clarify this in section 2.6 by adding a sentence to the paragraph: "In all cases where a SOAP header block is processed, the SOAP node MUST understand the SOAP header block and MUST do such processing in a manner fully conformant with the specification for that header block." with a sentence along the lines of "In all cases where a SOAP header block is processed, the SOAP node MUST understand the SOAP header block and MUST do such processing in a manner fully conformant with the specification for that header block. Successful processing of one header block does not guarantee successful processing of another block with the same fully qualified name within the same message." Comments? Henrik Frystyk Nielsen mailto:henrikn@microsoft.com [0] http://www.w3.org/2000/xp/Group/xmlp-lc-issues.html#x371 [1] http://www.w3.org/2000/xp/Group/2/10/LC/soap12-part1.html#procsoapmsgs [2] http://www.w3.org/2000/xp/Group/2/10/LC/soap12-part1.html#muprocessing
Received on Monday, 21 October 2002 13:43:31 UTC