Re: Reference requirements

Hello Jacek,

I like your proposal; I have one question: how do you declare in a WSDL
that a message contains a remote reference to a web service? The WASP
documentation says that if a message part contains a remote reference, it
will be of type http://idoox.com/interface:serviceReference...is that
correct? I think we need something better - with the current scheme there
is no way for a client to know by looking at the WSDL exactly what kind of
service reference is exchanged, until it actually receives the service
reference. I'm thinking it would be useful to be able to say in the message
definition "part foo will be a service reference for a service that
supports port types A, B and C". This would allow things like static
generation of stubs on the client side so it can use the service reference
when it comes in, and just makes the proposal more complete.

Thanks,
Nirmal.


                                                                                                                                       
                      Jacek Kopecky                                                                                                    
                      <jacek@systinet.c        To:       Paul Prescod <paul@prescod.net>                                               
                      om>                      cc:       <www-ws-desc@w3.org>                                                          
                      Sent by:                 Subject:  Re: Reference requirements                                                    
                      www-ws-desc-reque                                                                                                
                      st@w3.org                                                                                                        
                                                                                                                                       
                                                                                                                                       
                      02/20/2002 06:56                                                                                                 
                      AM                                                                                                               
                                                                                                                                       
                                                                                                                                       



 Paul,
 we will be very glad if we can standardize our way of supporting
remote references, and we'll welcome support from other W3C
members if we try to submit a Remote references and Instance IDs
spec as a W3C note.

 However, we will be equally glad if a different standard is
created and adopted and we can support that instead.

 In any case, the problem of remote references is two-fold:
 1) accessing different instances of a single service,
 2) referencing services and their instances.

 We can take your approach of extending the URI of the service
with the instance ID, and it would solve both problems easily,
but I feel nervous about this method because nowhere does it say
that every URI scheme used for accessing Web Services will allow
such extensions (thinking of email here).

 We can alternatively take the SOAP approach - create an
extension that will carry that additional information inside a
header. That's what we've taken. This solves the first problem
and it somehow resembles the notion of "sessions".
 The second problem we solve by passing a structure which
references a WSDL service (by its qname) and specifies the value
of the instanceID for the service, for example:
    <reference>
      <wsdlUri>http://example.org/service.wsdl</wsdlUri>
      <wsdlService
           xmlns:ns="urn:foo">ns:ServiceName</wsdlService>
      <instanceID>uuid:...</instanceID>
    </reference>
 In fact, the instanceID element in this structure can (and
probably should) be viewed as an extension of this structure
which without it serves quite sufficiently to reference whole
services. This implies there can be other parameters in such a
structure (if we don't move them to the WSDL description itself)
and I think this is the proper way.

 Oh, then there are HTTP cookies, too, but that way lay madness.
8-)

                   Jacek Kopecky

                   Senior Architect, Systinet (formerly Idoox)
                   http://www.systinet.com/



On Tue, 19 Feb 2002, Paul Prescod wrote:

 > Anne Thomas Manes wrote:
 > >
 > > Systinet WASP supports remote references using a header element to
reference
 > > the instance id.
 > >
 > > Anne Thomas Manes
 > > CTO, Systinet
 >
 > That's great. Can we standardize it?
 >
 > Even better...why not combine the endpoint URI and the instance ID
 > somewhat like this:
 >
 > http://www.manes.net/service?instance=instanceID
 >
 > I have other ideas beyond that but I'll let that one sink in. If you do
 > that then voila you've made it easy for every instance to be an endpoint
 > and all you need is a WSDL for it. Which puts the ball back in WSDL's
 > court. You need a way to say that the return value of a method will be a
 > URI like that and declare the WSDL that goes with that
 > instance-endpoint.
 >
 >  Paul Prescod
 >

Received on Friday, 22 February 2002 09:51:05 UTC