Search the web
Sign In
New User? Sign Up
soapbuilders
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Show off your group to the world. Share a photo of your group with us.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Multiple WS-Addresses in multiple namespaces   Message List  
Reply | Forward Message #10757 of 10820 |
Re: [soapbuilders] Multiple WS-Addresses in multiple namespaces

Paul Downey writes:

> I raised this very issue in my position paper [1] to the W3C Workshop
> on Enterprise computing, and see it as a fundamental consequence
> of SOAP not having a "stack", but a "bag" (actually a graph with WSS)
> which requires meta-data such as the much trumpeted WS-Policy to
> unravel.

One of my great regrets about the SOAP Recommendation is that it does not
make crystal clear an aspect of the design that I considered to be very
important. Still, the crucial function is there IMO:

First of all, it's not true that what SOAP has is a "bag"; the header
elements are siblings in an envelope Infoset, and the Infoset is ordered.
Also, headers may have interacting semantics [1] :

"Mandatory SOAP header blocks are presumed to somehow modify the semantics
of other SOAP header blocks or SOAP body elements."

Furthermore, and this is crucial, while SOAP itself mandates no fixed
order when processing, headers can be defined to control the order [1]:

"The processing of one or more SOAP header blocks MAY control or determine
the order of processing for other SOAP header blocks and/or the SOAP body.
For example, one could create a SOAP header block to force processing of
other SOAP header blocks in lexical order. In the absence of such a
controlling SOAP header block, the order of header and body processing is
at the discretion of the SOAP node. Header blocks MAY be processed in
arbitrary order. Header block processing MAY precede, MAY be interleaved
with, or MAY follow processing of the SOAP body. For example, processing
of a "begin transaction" header block would typically precede body
processing, a "logging" function might run concurrently with body
processing and a "commit transaction" header block might be honored
following completion of all other work."

This is not an accident. It's why we require that all mustUnderstand
checking be done before any other work. That's what ensures you that if
you have an mU header that says "do the headers in reverse order" or
"alphabetical order" or more likely "do signatures first" then that
header or those headers will necessarily be checked in time to determine
an order.

Furthermore, and this is the part I really wish had been highlighted a bit
more, nothing says these must be separate headers. So, IMO, if you want
to say >in the specification for wsa:To< "if there are multiple wsa:To
headers, here's the rule for how to process them all in the presence of
the others", you can do so. If they are marked mU then you can be sure
that, at least per the SOAP spec, their specifications can conspire to
determine an order.

In fact, what I really wanted to see in the recommendation would be a
statement along the lines of: "The specifications for headers that may
coexist in a SOAP message must collectively describe the correct
interpretation of the headers in combination as well as in isolation.
Thus, specifications may be written for families of headers designed to be
used together, to determine operation in the case where multiple instances
of the same header appear etc. Such specifications may call for a given
header to be "understood" only when accompanied or only if not accompanied
by certain other headers. etc."

I think that is in fact implicit in what is there, but obviously many
users have missed it. Whether the typical stacks out there provide much
help in supporting such combined interpretation and ordering is a
different question, but the spec definitely anticipates it IMO.

Noah

[1] http://www.w3.org/TR/soap12-part1/#muprocessing
[2] http://www.w3.org/TR/soap12-part1/#procsoapmsgs
--------------------------------------
Noah Mendelsohn
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------







Wed Feb 7, 2007 1:16 am

noah_mendelsohn@...
Send Email Send Email

Forward
Message #10757 of 10820 |
Expand Messages Author Sort by Date

I know having more than <wsa:To> or wsa:MessageID header in your Soap message is a nono, for any binding of wsa: to the various draft and final WS-A releases. ...
Steve Loughran
steve_loughran
Offline Send Email
Jan 29, 2007
4:41 pm

Hi Steve, ... Looking at this practically - if the correct WSA (and other) headers are present (and in the SAME namespace), then it seems possible that the ...
John Kemp (Nokia-NRC/...
frumioj
Offline Send Email
Jan 29, 2007
5:23 pm

... Yes, I am thinking of how best to handle the situation on my end. I currently work back from newest to oldest namespaces looking for a match, and ignore...
Steve Loughran
steve_loughran
Offline Send Email
Jan 29, 2007
6:15 pm

... That seems reasonable... ... That seems reasonable too ;) ... Right. I just don't think you should feel too secure about sending all three together. It...
John Kemp (Nokia-NRC/...
frumioj
Offline Send Email
Jan 29, 2007
6:36 pm

Steve, The WS-A implementations I have knowledge of both take the (c) approach and only process one namespace. This means that when mustUnderstand processing...
illsleydc
Offline Send Email
Jan 29, 2007
6:34 pm

Hi Steve ... I raised this very issue in my position paper [1] to the W3C Workshop on Enterprise computing, and see it as a fundamental consequence of SOAP not...
Paul Downey
sumnerdowney
Offline Send Email
Jan 30, 2007
12:08 pm

Hi Paul! ... While I don't necessarily disagree with this (and believe me, the discussion as to processing order was a big one back in the early days of XMLP),...
Glen Daniels
glen@...
Send Email
Jan 30, 2007
6:18 pm

... or you understand none, which again, is unimportant. ... Well, then -why didnt WS-A to have some guidelines for the problem. Given that the WS-RF 1.0 spec...
Steve Loughran
steve_loughran
Offline Send Email
Jan 30, 2007
10:14 pm

Hi Steve: ... I agree, and I would suggest that feedback/errata be offered to the WSA working group. I haven't had time to scan the archives, but I'm sure ...
Glen Daniels
glen@...
Send Email
Feb 1, 2007
2:54 pm

... well, I shall modify my servlet engine to support multiple Host fields in the get request to make its http layer more consistent :)...
Steve Loughran
steve_loughran
Offline Send Email
Feb 1, 2007
8:13 pm

... One of my great regrets about the SOAP Recommendation is that it does not make crystal clear an aspect of the design that I considered to be very ...
noah_mendelsohn@...
Send Email
Feb 7, 2007
1:16 am

On 2/7/07, noah_mendelsohn@... <noah_mendelsohn@...> wrote: ." ... aah. Soap1.2. Soap 1.1 says nothing about where the headers are validated,...
Steve Loughran
steve_loughran
Offline Send Email
Feb 8, 2007
3:59 pm

... Well, my reading of the ws-i basic profile is that it says the same thing regarding SOAP 1.1 [1]: "R1025 A RECEIVER MUST handle messages in such a way...
noah_mendelsohn@...
Send Email
Feb 8, 2007
5:14 pm

... Sometimes I suspect complexity is the underlying problem. Like WSDL. Its almost impossible for humans to write, so what you get is a mess, compared to,...
Steve Loughran
steve_loughran
Offline Send Email
Feb 8, 2007
6:51 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help