Re: Issue: should WSDL allow overloaded methods?

There are a lot of legacy distributed RPC systems out there.  If you want
them to step up to Web Services, you will have to support a mapping from
those systems to Web Services, so you will need an RPC mapping.  Don't make
that mapping more difficult than it has to be, or you will lose a large
potential base of support for Web Services.

Object interfaces have failed on the web?  Tell that to the J2EE folks who
are spending (and making) gobs of money at it.

Russell Butek
butek@us.ibm.com


"Jean-Jacques Moreau" <moreau@crf.canon.fr>@w3.org on 05/23/2002 03:28:50
AM

Sent by:    www-ws-desc-request@w3.org


To:    Russell Butek/Austin/IBM@IBMUS
cc:    www-ws-desc@w3c.org
Subject:    Re: Issue: should WSDL allow overloaded methods?



I think a number of people are starting to point out that this is not how
you
should be doing Web services, including members of the XMLP WG and the TAG.
The
newer emphasis seems to be more on the document model rather than on RPCs.

An indication of this is that the SOAP RPC model is now optional. A further
evidence is that the XMLP WG decided just last night (sorry, day time PST)
to
revise its HTTP binding to more gracefully integrate with the Web
Architecture
(also sometimes known as the REST principle).

You may also be interest in Roy Fielding's analysis of why he thinks
object-interfaces failed on the Web [1].

Jean-Jacques.

[1] http://lists.w3.org/Archives/Public/www-tag/2002Mar/0153.html

Russell Butek wrote:

> I'm sorry I haven't been keeping closer tabs on this issue, but I would
> like to discourage this thread.  Many languages support overloaded
> operations.  If you disallow it in WSDL, all you're doing is moving the
> burden of dealing with overloaded operations from the WSDL spec to
mapping
> specs.  And all this accomplishes in the long run is cryptic mappings,
more
> chances for name clashes, and more difficulty resolving names in the
> runtime.  How, for instance, would the following Java be mapped to WSDL?
>
> MyObject create(String context, String name);
> MyObject create(URL name);
> MyObject create(OtherObject obj);
> URL createURL();
> OtherObject createOtherObject();
>
> Most likely, mappings will have to come up with mangled names like:
>
> <operation name="createStringString".../>
> <operation name="createURL".../>
> <operation name="createURL".../> <!-- which of these should be mangled
> further? -->
> <operation name="createOtherObject".../>
> <operation name="createOtherObject".../> <!-- which of these should be
> mangled further? -->
>
> Yes, a language mapping could probably solve these issues better than I
did
> in this quick note, but if WSDL itself allowed overloaded operations,
then
> the language mapping wouldn't even have to deal with the issues, we'd
> generate cleaner WSDL and we wouldn't have to worry about name clashes
and
> resolution difficulties in the tools and runtime.
>
> I don't know the issues at hand, and perhaps they're significant, but I
> would like everyone to weigh those issues against future issues that
> banning overloaded operations would raise.
>
> Russell Butek
> butek@us.ibm.com
>
> "Jean-Jacques Moreau" <moreau@crf.canon.fr>@w3.org on 05/22/2002 04:19:12
> AM
>
> Sent by:    www-ws-desc-request@w3.org
>
> To:    Joyce Yang <joyce.yang@oracle.com>
> cc:    www-ws-desc@w3c.org
> Subject:    Re: Issue: should WSDL allow overloaded methods?
>
> +1
>
> Joyce Yang wrote:
>
> > Proposal: clearly disallow methods overloading in WSDL 1.2.
> > Methods overloading should exist in the concrete implementation
> > of the service, but not in the service description.

Received on Thursday, 23 May 2002 09:05:48 UTC