- From: Roberto Chinnici <roberto.chinnici@sun.com>
- Date: Thu, 30 Jan 2003 14:53:16 -0800
- To: Sanjiva Weerawarana <sanjiva@watson.ibm.com>
- CC: Martin Gudgin <mgudgin@microsoft.com>, www-ws-desc@w3.org
Hi Sanjiva, You were asking Gudge, but I hope you don't mind if I try to answer your questions. Sanjiva Weerawarana wrote: >Hi Gudge, > >I have some questions in trying to understand your proposal. They >are centered around how this works with inheritance and the other >on language binding. > >Consider the following case (using pseudo syntax which I hope clear >enough to all): > >WSDL document 1: > namespace = nsuri-1; > portType pt1 { > operation o1; > operation o2; > } > >WSDL document 2: > namespace = nsuri-2; > portType pt2 extends {nsuri-1}pt1 { > operation o3; > } > >Now, what are the operations available in {nsuri-2}pt2? Can you >please indicate both the name and targetnamespace properties of >each of the operations? > There's three of them: operation {nsuri-1}o1; operation {nsuri-1}o2; operation {nsuri-2}o3; >Also consider another WSDL document: > >WSDL document 3: > namespace = nsuri-3; > portType pt3 extends {nsuri-1}pt1 { > operation o1; > } > >Is this legal? What are the constraints on what can be in the o1 >definition in pt3 (if any)? > Yes, it is legal. In short, the qualified name of an operation must be unique. It's just like before, but instead of saying "the name must be unique" we now say "the qualified name must be unique". >If legal, what are the values of the TNS and name properties of >all the operations available via pt3? > operation {nsuri-1}o1; operation {nsuri-1}o2; operation {nsuri-3}o1; >Finally, how does all this look when bound to a language (like >Java)? I'd like to understand how the targetnamespace properties >of an operation name will be represented in the language binding. >Yes, I know we don't do language binding, but someone does. > Hmmm, wonder who that someone might be! ;-) I guess you'll have to come up with identifiers that reflect the combination of namespace name and local part. In most cases, everything will be fine, in some cases tools will come up with bad defaults and humans will override them. Notice also that the problem exists today, even without overloading: if you have an operation called "foo-bar" and the dash ('-') is not valid in identifiers, you'll have to map it to something else (fooBar, foobar, foox2DBar, foo45Bar, foo$2D$Bar), but no matter how clever you are you might get a conflict with another operation (called, e.g. "fooBar", or "foobar", or...). Roberto >Thanks, > >Sanjiva. > >----- Original Message ----- >From: "Martin Gudgin" <mgudgin@microsoft.com> >To: <www-ws-desc@w3.org> >Sent: Thursday, January 30, 2003 11:45 PM >Subject: HTML version of operation name proposal > > > > >>An HTML version of the operation name proposal can be found at[1]. It is >>exactly the same as the XML version at[2]. It differs from the link I >>previously sent out to the list in two respects: >> >>1. It contains the best practice note >>2. The binding operation component now has a {target namespace} >>property to match the corresponding component in the port type >> >>Gudge >> >>[1] >>http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.html?rev= >>1.18.2.1&content-type=text/html >>[2] >>http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.xml?rev=1 >>.37.2.3&content-type=text/xml >> >>
Received on Thursday, 30 January 2003 17:53:21 UTC