- From: Hugo Haas <hugo@w3.org>
- Date: Thu, 24 Feb 2005 14:49:44 +0100
- To: Jonathan Marsh <jmarsh@microsoft.com>
- Cc: Glen Daniels <gdaniels@sonicsoftware.com>, public-ws-addressing@w3.org
- Message-ID: <20050224134944.GK16108@w3.org>
I have just realized that my proposed rules have an issue with regards to intermediaries: * Hugo Haas <hugo@w3.org> [2005-02-24 13:26+0100] [..] > Here is a version 2 of my proposal (reordered, improved, and > condensed): > > 1. Make the [reference parameters] message addressing property's XML > Infoset representation in Core's section 3.1 the following, which > was the second rule of the SOAP binding: > > /[reference parameters]* > > Each element information item of found in [reference parameters] > (including all of its [children], [attributes] and [in-scope > namespaces]) is represented as is. > > 2. Define the following as the first rule of the SOAP binding when > _sending_ a message: > > 1. All the message addressing properties are serialized as SOAP > header blocks using their XML Infoset representation defined in > Core section 3.1 XML Infoset Representation of Message > Addressing Properties. > > 2. Each SOAP header block resulting from a [reference parameters] > is annotated with a wsa:Type attribute whose value is > "parameter". > > 3. Add the following rules when _receiving_ a SOAP message: > > 1. The value of each message addressing property takes the value > from the corresponding SOAP header block in the wsa namespace > targeted at the node which matches the XML Infoset > representation described in Core section 3.1. > > 2. Each such SOAP header block annotated with a wsa:Type > attribute whose value is "parameter" is added to the content > of the [reference parameters] MAP, without the wsa:Type > attribute. > > 3. The SOAP header blocks annotated with a wsa:Type attribute > whose value is "parameter" targeted at the node are processed > as normal SOAP headers as per SOAP processing model. Note that > these headers are resulting from the serialization of an EPR's > [reference parameters] property, and may require additional > security and sanity checks by the SOAP received. For an intermediary, i.e. receiving and then sending the SOAP message after processing, [reference parameters] according to the above rules will be consumed and always replied: - the message is received (change 3 above) - ref params headers are stored in the [reference parameters] MAP (rule 3-2) - ref params headers are processed (rule 3-3) - then, the message is sent follows its path to the ultimate receiver (change 2 above) - [reference parameters] stored during rule 3-2 are reinserted So maybe rule #2 when receiving a SOAP message should just be dropped. In other words, the [reference parameters] is *not* populated when receiving a message. Comments? -- Hugo Haas - W3C mailto:hugo@w3.org - http://www.w3.org/People/Hugo/
Received on Thursday, 24 February 2005 13:49:45 UTC