Re: my action re: CR044

Hi Roberto, 

I like your term "a binding applied to an interface", and most of your
proposal, with one small exception below:

On Tue, 2006-07-11 at 17:33 -0700, Roberto Chinnici wrote:
> Then in part 2 we should replace all uses of the misleading terminology
> described earlier with the new one. E.g., in 5.7.2,
> 
> [[
> {soap mep default} OPTIONAL. A xs:anyURI, which is an absolute IRI as
> defined by [IETF RFC 3987], to the Binding  component.† The value of
> this property identifies the default SOAP Message Exchange Pattern (MEP) 
> for all the Interface Operation components of any Interface component
> that uses this Binding component.
> ]]
> 
> becomes
> 
> [[
> {soap mep default} OPTIONAL. A xs:anyURI, which is an absolute IRI as
> defined by [IETF RFC 3987], to the Binding  component.† The value of
> this property identifies the default SOAP Message Exchange Pattern (MEP) 
> for all the Interface Operation components of any Interface component to 
> which this Binding component is applied.
> ]]

The thing is that Interface Operation components do not have (nor care
about) SOAP Message Exchange Pattern.

I was suggesting for the HTTP transfer coding default (and implicitly
for all similar places, e.g. SOAP MEP default) that the binding sections
drop all mentions of interface components, and that we say somewhere
that bindings that don't have (some) binding operation components get
all the appropriate binding operations at runtime, virtually (so to
speak), when the binding is applied to some interface.

Currently, we say this in 2.9.1:

        A Binding component that defines bindings for an Interface
        component MUST define bindings for all the operations of that
        Interface component.† The bindings may occur via defaulting
        rules which allow one to specify default bindings for all
        operations (see, for example [WSDL 2.0 Adjuncts]) or by directly
        listing each Interface Operation component of the Interface
        component and defining bindings for them. Thus, it is an error
        for a Binding component to not define bindings for all the
        Interface Operation components of the Interface component for
        which the Binding component purportedly defines bindings for.

This could be expanded to interface-less binding like this:

        A Binding component that does not specify any Interface
        component will be applied to an Interface component through its
        use by some Endpoint component (see 2.15). In this case all
        bindings occur via default rules and it is an error for a
        Binding component not to have an Interface component if the
        default rules of the binding type are not sufficient to bind all
        aspects of the Interface Operation and Interface Fault
        components.
        
It also seems that the existing paragraph should also mention Interface
Fault components.

With this, we don't need to mention interface* components in the binding
default descriptions.

Hope this helps,

Jacek

Received on Wednesday, 12 July 2006 07:45:37 UTC