Re: Issue: should WSDL allow overloaded methods?

That's exactly the point: Where are we starting from? In my opinion WSDL is for 
describing Web Services; but a Web Service could exist and be used without a 
description (how practicable such a Web Service with a missing description is, 
is another question). 

Sure, if using WSDL as an interface modeling language for Web Services,  we 
have the problem, that we could model something that possibly could not be 
implemented with a 1:1 mapping for a certain programing language. But I'm not 
sure if this perspective is the original intended one. If someone has invested 
time and money in a high-sophisticated dispatching mechanism which actually 
realizes/allows method overloading for his Web Service, we should give him the 
possibility to describe it with WSDL.

So I would agree to Russell (so far I understood him right), that we should 
allow overloaded methods in WSDL.

jr. 

Jochen Rütschlin
DaimlerChrysler · Research and Technology
Data and Process Management (RIC/ED)
P.O. Box 2360 · D-89013 Ulm (Donau) · Germany
Visitor's address: Wilhelm-Runge-Straße 11
Phone:   +49.731.505-2830
Telefax: +49.731.505-4401
Internet E-Mail: jochen.ruetschlin@DaimlerChrysler.com




		
	jeff.mischkinsky@oracle.com
	Gesendet von: www-ws-desc-request@w3.org
	23.05.2002 02:43
		 
		 An: moreau@crf.canon.fr, butek@us.ibm.com
		 Kopie: www-ws-desc@w3c.org, joyce.yang@oracle.com
		 Thema: Re: Issue: should WSDL allow overloaded methods?

Hi Russ,
    It seems to me that the best way to proceed may depend upon where one 
starts from. Starting with a WSDL that allows overloading means that there 
will be a mangling problem when mapping to languages that do not allow 
overloading.
    Even if one accepts that argument that "modern" languages, and the only 
ones that we need to be concerned about, support overloading,  there still 
may be a problem. The mapping will only be "natural" if the type systems 
between WSDL and the target languages are similar "enough" that the 
languages will allow the reuse of a method name for all possible 
overloadings in both directions.
    For example let's say that in an overloaded WSDL there is a difference 
between unsigned and signed integers, so that i can have 2 foo(), one with 
an unsigned integer, the other with a signed integer. What will happen in a 
language which doesn't allow a foo(unsigned integer) and foo(integer)?

   Another issue that arises is the efficiency/possibility of doing 
dispatch on the server side. If WSDL allows overloading, then the dispatch 
mechanism will have to determine which "real" method to call based upon the 
actual parameter types in the request. (Dispatch based upon name won't be 
good enough.) Resolving the ambiguity may be quite complex and time consuming.

   cheers,
    jeff

At 05:32 AM 5/22/02, 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.

--
Jeff Mischkinsky                    jeff.mischkinsky@oracle.com
Consulting Member Technical Staff   +1(650)506-1975 (voice)
Oracle Corporation                  +1(650)506-7225 (fax)
400 Oracle Parkway, M/S 4OP960
Redwood Shores, CA 94065 USA

Received on Thursday, 23 May 2002 07:52:18 UTC