RE: attributes & WSDL (was: Re: attributes in CORBA IDL)

[snip]

> >
> > <definitions>
> >   <binding>
> >     <attribute>
> >        <soap:operation style="document|rpc"?
> >                        soapAction="uri"? /> ?
> >     </attribute>
> >   </binding>
> > </definitions>
> 
> The above doens't work because WSDL doesn't allow one to
> introduce new operations to the interface via soap:operation.
> If we want to make this approach work then we'd have to
> define something like soap:attribute to define how to bind
> attributes. That is certainly viable, but suffers from
> being binding specific.
> 

You're right! My mistake. I don't see the problem with defining
soap:attribute, though. Operations are binding specific already. Why not
attributes? 
 
> > Now, if you mean that the WSDL specification should define that this
> >
> > <wsdl:interface name="myInterface">
> >    <wsdl:attribute name="foo" type="xsd:string" readonly="true"/>
> > </wsdl:interface>
> >
> > is translated to this
> >
> > <wsdl:message name="fooMessage" >
> >    <part name="value" type="xsd:string/>
> > </wsdl:message>
> >
> > <wsdl:interface name="myInterface">
> >   <wsdl:operation name="getFoo">
> >      <wsdl:output message="fooMessage"/>
> >   </wsdl:operation>
> > </wsdl:interface>
> 
> That's precisely what I meant.
> 

I see this as very restrictive. All you are doing is effectively
defining in the WSDL specification a transformation from WSDL to WSDL.
You are not making attributes a first-class WSDL element.

> > then I would argue that these two are indeed very similar but such a
> > transformation is more restrictive than it is necessary. I believe
the
> > previous binding approach is closer to what WSDL should define.
> 
> I disagree. If we do it this way, someone can bind this to any
> protocol/transport without any problem. It can be a regular SOAP
> operation or an HTTP GET or whatever. Providing that flexibility
> is precisely the role of wsdl:interface & wsdl:operation.
> 

Then, if you are going to treat attributes as operations, perhaps you
shouldn't define attributes in WSDL. You should have a separate document
describing a convention on what it means for an interface to support
attributes. What you are suggesting is similar to saying in IDL that the
"attribute" IDL keyword suggests that every IDL-defined interface should
have get/set methods. However, that is not the case.

> 
> They're not at all; I think your mapping to WSDL shows that we
> are basically in agreement except that you prefer something I
> disagree with.
> 

:-)


> Nope, you have every right to have your views and defend it. As
> long as you don't get to a certain Restafarian status you're in
> good shape ;-).

No no no. I am not going to convert this to a religious war. Life is too
short :-) As long as you do it my way, we'll be fine :-) (Just joking of
course).

.savas.

Received on Wednesday, 2 July 2003 14:10:31 UTC