- From: <noah_mendelsohn@us.ibm.com>
- Date: Thu, 22 Aug 2002 10:38:10 -0400
- To: "Williams, Stuart" <skw@hplb.hpl.hp.com>
- Cc: "'Mark Baker'" <distobj@acm.org>, Henrik Frystyk Nielsen <henrikn@microsoft.com>, jacek@systinet.com, jones@research.att.com, marc.hadley@sun.com, moreau@crf.canon.fr, "Williams, Stuart" <skw@hplb.hpl.hp.com>, xmlp-comments@w3.org
I agree with Stuart 100% on this as to both the longer term history and
the specifics of the resolution of 227. I was there at the F2F (I think
Mark Baker was on the phone, not sure), and I happen to have written the
minutes in question.
Mark Baker asks:
>> How do you reconcile that with the proposal;
...
>> i.e. that applications must supply a
>> value for the ] property...and to make
>> sure the spec is clear on that point.
>> specifically the "applications must supply a value" part?
The minutes, as you know, are unedited at this time and are written
stream-of-consciousness by the scribe. Their purpose is to capture enough
that accurate minutes can be written and to ensure that issues are
resolved in the intended manner. Specifically, the way I reconcile the
situation is this: as scribe and as someone who is well familiar with the
binding framework I took it is an absolute given that any behavior we were
describing was implicitly within the assumptions we've been making right
along, which are exactly as Stuart describes them. So, when I wrote the
above, I meant what he meant in his note yesterday.
Specifically, "applications must supply a value" was the scribe's
shorthand for what it always means in the binding framework for a property
to have a value: I.e., the node must be capable, in some implementation
defined means of answering the question "what is the value of the method
property."
We never, never talk about API's or internal structure of the node.
Indeed, there's nothing that says that any other property is supplied by
the application in any sense other than what I've just said. Consider the
envelope infoset itself. We don't say where it comes from. We don't
describe even roughly an API that would lead to it's existence. The
envelope can be burned in ROM. It can live always at location 100 in main
memory. You can do an (admittedly unlikely and probably undesireable)
implementation in which all your TCP code is scrambled in with all your
application code, which is scrambled with all your SOAP code, HTTP binding
code, IP code, etc., and there is no API between layers at all. SOAP is
silent on this, just as TCP/IP (a clearly layered protocol) is silent on
how the actual implementations are layered (and there has been wonderful
published work going back over 20 years showing that the unlayered
implementations are often superior for performance.)
So: we don't say where the envelope comes from; we don't say where the
destination URI comes from; we don't say where the webMethod comes from.
Similarly, the TCP specification doesn't say where the stream to be sent
comes from, but that spec does require that you in some way you know have
a stream to send. Similarly, our HTTP binding cannot be used unless your
implementation can answer the questions: what is the destination URI,
what is the envelope infoset, what is the webMethod. How an
implementation represents or passes around those values between its
internal layers is way beyond our spec.
====
One other thing: there's been some discussion of openning new issues,
etc. I strongly disagree. The workgroup has passed (unless I
misunderstand the W3C process) the time at which we in the WG get to open
new issues, unless of course there is something so truly broken that the
system just won't run, the spec lies outright, etc. Where we are on this
is: issue 227 was raised. The workgroup voted to close it and we have
unedited minutes of the scribe, followed by proposed resolution text. The
original resolution text did not make members of the wg and (I believe)
the originator completely happy, so we've spent some time tuning it up. I
think where we are is that we now have a clearer statement of what the WG
decided (or what I'm confident the wg decided), and agreement from the
originator that it's OK.
Mark Baker has raised some questions abouyt the scribes minuntes of the
F2F, and also about the implications for APIs. Stuart and I have weighed
in strongly that nothing in the bindings, binding frameworks or http
binding in particular has ever attempted to deal with API level issues,
and I don't think that's a debate we should be openning now. As I have
made clear, the scribe intended nothing otherwise in the minutes, and I
apologize for any confusion.
So my personal position is: we raised an issue, we did a reasonably
careful job of resolving it and some of those involved such as Stuart (and
Marc Hadley, I suspect) have been kind enough to go along with a
resolution that I suspect is not their first choice. I think we have text
that captures the resolution. I would strongly urge us not to use this
is an opportunity to look for more things to debate and resolve. Unless
I'm mis-remembering, the WG has specifically voted to pass that point in
the process and to devote its efforts to reflecting in a new draft the
resolutions that we have agreed. Of course, this is just my personal view
of where we stand. I'd like to update the resolution text of 227 and move
on. Thank you.
------------------------------------------------------------------
Noah Mendelsohn Voice: 1-617-693-4036
IBM Corporation Fax: 1-617-693-8676
One Rogers Street
Cambridge, MA 02142
------------------------------------------------------------------
"Williams, Stuart" <skw@hplb.hpl.hp.com>
08/22/2002 05:33 AM
To: "'Mark Baker'" <distobj@acm.org>, noah_mendelsohn@us.ibm.com
cc: Henrik Frystyk Nielsen <henrikn@microsoft.com>, jacek@systinet.com,
jones@research.att.com, marc.hadley@sun.com, moreau@crf.canon.fr,
"Williams, Stuart" <skw@hplb.hpl.hp.com>, xmlp-comments@w3.org
Subject: RE: issue 227
Mark,
To the best of my knowledge and throughout my involvement in the TBTF and
the WG it has always been clear (at least to me) that the binding
framework/SOAP extensibility model along with the concepts of features,
properties, property containers (message exchange context) modules and
bindings are descriptive tools to enable the structuring and re-use of
components parts of a specification. At no time (to my recollection) has
it
ever been the intention that the structure of the description (partitioned
into features specs, binding specs, and module specs) be prescriptive on
the
structure of an implementation. The thing that it does make sense to be
precriptive about is the externally observable behaviour of
implementations
that claim conform to the specifications - ie. they claim to exhibit the
behaviour that the specifications require.
The position you appear to be taking is that the WGs resolution of 227
does
indeed place requirements on the structure of an implementation. I may
have
miss read that - in which case I'm sure you will correct me. But if that
is
your position, then I believe that it is on the other side of a line that
the TBTF and the WG took some care not to cross.
To summarise:
The binding framework (features, properties, message exchange contexts) in
particular is about structuring the behavioural description embodied in a
binding specification. It is *not* about constraining the structure of an
implementation. It may be convenient as a means to meet the behavioural
requirements of a binding specification to structure an implementation
along
the lines of the framework based specification... but it is not (IMO) a
requirement to do so.
So suggest otherwise... is what I characterised as attempting "...to cease
more ground...." in an earlier response... and would be a *big* change in
the WG's philosophy with respect to the framework.
Best regards
Stuart
--
> -----Original Message-----
> From: Mark Baker [mailto:distobj@acm.org]
> Sent: 22 August 2002 00:20
> To: noah_mendelsohn@us.ibm.com
> Cc: Henrik Frystyk Nielsen; jacek@systinet.com;
> jones@research.att.com;
> marc.hadley@sun.com; moreau@crf.canon.fr; skw@hplb.hpl.hp.com;
> xmlp-comments@w3.org
> Subject: Re: issue 227
>
>
> Hi Noah,
>
> On Wed, Aug 21, 2002 at 06:15:14PM -0400,
> noah_mendelsohn@us.ibm.com wrote:
> > * Issue 227 in particular questions such mandatory use of the
webMethod
> > feature by the HTTP binding. The WG has voted to make no change in
this
> > mandatory use of the webMethod feature by the http binding. The HTTP
> > binding continues to mandate that a sending node determine the
webMethod
> > (e.g. POST, GET) to be used when transmitting a non-Response message.
> > (Note that the entire property-based binding framework is abstract: at
no
> > point does the HTTP binding attempt to describe a particular API or
> > implementation structure, so this resolution says nothing about
whether
> > method names such as GET would be supplied explicitly or otherwise on
some
> > particular API;
>
> How do you reconcile that with the proposal;
>
> ] [scribenrm] DF: Proposal...(1) we accept that bindings can specify
> ] that features are mandatory (2) we sweep the spec to ensure that's
> ] clear (3) leave web method as a mandatory feature of the http
> ] binding...i.e. that applications must supply a value for the
> ] property...and to make sure the spec is clear on that point.
>
> specifically the "applications must supply a value" part?
>
> Or, from the LC WD;
>
> "Bindings to HTTP or such other protocols SHOULD use the Web Method
> Specification Feature to give applications control over the
> Web methods
> to be used when sending a SOAP message."
> -- http://www.w3.org/TR/soap12-part2/#WebMethodFeature
>
> What I extract from your proposal is that it's ok for the SOAP library
> to supply the value without direction from the application.
> This seems
> to be a significant change from the current WD. I agree that
> there are
> valid cases where the library can supply the value, such as if the API
> it exposes can suitably represent the semantics of the methods to the
> developer; e.g. "o < foo" triggers GET, "o > foo" triggers PUT,
> "o >> foo" triggers POST, etc.. But I'm concerned that SOAP
> implementers will think that by saying nothing about this, that we're
> giving the thumbs up to doing things like inferring the
> method from the
> MEP, or other information which has nothing to do with the method.
>
> If you like that reasoning, I can write it up as a proposal.
>
> > it merely mandates that the sending node determine the
> > method in some implementation specific manner, and it
> declines to supply
> > any standard way of inferring the method from other
> information provided
> > with the message to be transmitted."
>
> Wouldn't a SOAP 1.1 node meet that criteria?
>
> MB
> --
> Mark Baker, CTO, Idokorro Mobile (formerly Planetfred)
> Ottawa, Ontario, CANADA. distobj@acm.org
> http://www.markbaker.ca http://www.idokorro.com
>
Received on Thursday, 22 August 2002 10:40:21 UTC