W3C home > Mailing lists > Public > www-ws-desc@w3.org > February 2004

Re: Version attribute for WSDL

From: Prasad Yendluri <pyendluri@webmethods.com>
Date: Thu, 19 Feb 2004 14:24:20 -0800
Message-ID: <40353794.3090300@webmethods.com>
To: www-ws-desc@w3.org

William,

>Prasad, I don't see what the problem is with creating a new namespace URI by using a >previous namespace URI as a base.

There is no issue with creating a new URI that represents a version with 
the namespace URI as the base. However if you are asking that we make 
that the new namespace URI (@targetNamespace on the definitions element) 
of the versioned WSDL effectively using the namespace attribute to 
version,  I do see a problem. I was not sure however if  that is what 
you are proposing..

Regards, Prasad

>	-----Original Message----- 
>	From: www-ws-desc-request@w3.org on behalf of Vambenepe, William N 
>	Sent: Thu 2/19/2004 11:28 AM 
>	To: Prasad Yendluri; www-ws-desc@w3.org 
>	Cc: 
>	Subject: RE: Version attribute for WSDL
>	
>	
>	David, in your proposal, you suggest to create a URI based on the namespace URI of the "older" interface. That sounds good, but where does this URI go? First I assumed you meant it goes in an attribute of type anyURI that we would add to interface, and I replied to you that this URI should go as the namespace URI for the "newer" interface instead. Then I re-read your text and I thought maybe this is what you meant all along. Now I am confused again. Can you please clarify where in the WSDL you would put the "versioned" URI? As the namespace of the "newer" interface or not.
>	 
>	Prasad, I don't see what the problem is with creating a new namespace URI by using a previous namespace URI as a base.
>	 
>	William
>	 
>
>		-----Original Message-----
>		From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] On Behalf Of Prasad Yendluri
>		Sent: Tuesday, February 17, 2004 5:31 PM
>		To: www-ws-desc@w3.org
>		Subject: Re: Version attribute for WSDL
>		
>		
>
>
>		David Orchard wrote:
>		
>
>			Creating a URI from the namespace name and version is not messing with the namespace URI. 
>			
>
>		I did not suggest that at all. My response is based on William's note below, the text around "Yes, I fully agree with doing this in the URI that represents the namespace." I interpreted that to mean changing the namespace URI. If we are not, I have no issue (on that).
>		
>		
>
>			It's about having a normative way of generating a URI from a base URI, in this case an NS URI, and a secondary resource identifier, in this case a version identifier.  We could use #, ;, / to separate.  Just depends on whether you want the server to see the secondary resource identifier or not.  This seems like a new symbol space to me...
>			 
>			This is all completely valid and expected within the web and web services architecture..
>			 
>			Dave
>			-----Original Message-----
>			From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org]On Behalf Of Prasad Yendluri
>			Sent: Tuesday, February 17, 2004 4:53 PM
>			To: www-ws-desc@w3.org
>			Subject: Re: Version attribute for WSDL
>			
>			
>
>				Messing with the namespace URI (and effectively changing namespace) for versioning seems undesirable to me. 
>				I like to keep version a separate attribute distinct from the namespace and actually I prefer that it be a +ve numerical.
>				A higher value representing a younger (subsequent) version than the lower valued one. Also IMO we 
>				must clearly define the semantics of this attribute lest we end up creating another area of confusion. 
>				The following semantics look good to me.
>				
>				The version attribute indicates a "minor" revision of the definition or
>				interface. Specifically, a "minor" revision indicates that a client using
>				a WSDL with a version attribute less-than the current value is expected
>				to continue to function.
>				In essence I am for Tom's (2nd) proposal below except the approach suggested in example 2. When an incompatible change is made, 
>				it should be left up to the WSDL writer to decide how to change the namespace URI rather the spec dictating it.
>				
>				I don't quite understand the issue with defaulting the version to "1" if not set explicitly however...
>				
>				Regards, Prasad
>				
>				-------- Original Message -------- 
>Subject: 	RE: Version attribute for WSDL	
>Resent-Date: 	Fri, 13 Feb 2004 18:49:15 -0500 (EST)	
>Resent-From: 	www-ws-desc@w3.org	
>Date: 	Fri, 13 Feb 2004 15:48:53 -0800	
>From: 	Vambenepe, William N <vbp@hp.com> <mailto:vbp@hp.com> 	
>To: 	David Orchard <dorchard@bea.com> <mailto:dorchard@bea.com> , <paul.downey@bt.com> <mailto:paul.downey@bt.com> , <tomj@macromedia.com> <mailto:tomj@macromedia.com> , <www-ws-desc@w3.org> <mailto:www-ws-desc@w3.org> 	
>
>				My mistake, I thought you were suggesting doing URI tricks inside a
>				"version" attribute that would be of type URI. Yes, I fully agree with
>				doing this in the URI that represents the namespace. This is what I
>				meant in a previous email: "maybe what we need instead is an optional
>				convention on how to build interface QNames that convey versioning
>				information. Whether that convention belongs in the WSDL spec is another
>				question...""
>				
>				So +1 from me that this is the right approach. I am not sure this group
>				needs to specify that, but it's fine by me if many people want it in our
>				spec.
>				
>				William
>				
>				> -----Original Message-----
>				> From: www-ws-desc-request@w3.org 
>				> [mailto:www-ws-desc-request@w3.org] On Behalf Of Vambenepe, William N
>				> Sent: Friday, February 13, 2004 12:41 PM
>				> To: David Orchard; paul.downey@bt.com; tomj@macromedia.com; 
>				> www-ws-desc@w3.org
>				> Subject: RE: Version attribute for WSDL
>				> 
>				> 
>				> > I wonder if we could play some magic trick and say that the 
>				> > minor version is a relative URI from the namespace name, and 
>				> > then the "match" could be of the strings.  A nice use of URIs 
>				> > for comparison imo.
>				> 
>				> Why not play that trick on the URI part of the QName of the interface?
>				> 
>				> William
>				> 
>				> > -----Original Message-----
>				> > From: www-ws-desc-request@w3.org 
>				> > [mailto:www-ws-desc-request@w3.org] On Behalf Of David Orchard
>				> > Sent: Friday, February 13, 2004 12:13 PM
>				> > To: paul.downey@bt.com; tomj@macromedia.com; www-ws-desc@w3.org
>				> > Subject: RE: Version attribute for WSDL
>				> > 
>				> > 
>				> > Ah Paul,
>				> > 
>				> > I had earlier thought about using URIs for the "minor" 
>				> > version # and the problem of multiple nested versions and you 
>				> > are probably right about the problem of increasing minor versions.  
>				> > 
>				> > Tell me though, is 3.3 compatible with 3.2.1.1?  I would 
>				> > assume they would have to be.
>				> > 
>				> > I wonder if we could play some magic trick and say that the 
>				> > minor version is a relative URI from the namespace name, and 
>				> > then the "match" could be of the strings.  A nice use of URIs 
>				> > for comparison imo.
>				> > 
>				> > Dave
>				> > 
>				> > > -----Original Message-----
>				> > > From: www-ws-desc-request@w3.org 
>				> > [mailto:www-ws-desc-request@w3.org]On
>				> > > Behalf Of paul.downey@bt.com
>				> > > Sent: Friday, February 13, 2004 10:02 AM
>				> > > To: dorchard@bea.com; tomj@macromedia.com; www-ws-desc@w3.org
>				> > > Subject: RE: Version attribute for WSDL
>				> > > 
>				> > > 
>				> > > 
>				> > > I like this too, especially the defaulting on extension.
>				> > > 
>				> > > My small concern is using the integer to indicate the relationship
>				> > > between versions precludes branches, unless we allowed a  SCCS/RCS/CVS 
>				> > > style numbering system, e.g:
>				> > > 
>				> > > 1 -> 2 -> 3 -> 4 -> 5 
>				> > >           |
>				> > >           +-> 3.1 -> 3.2 -> 3.3 
>				> > >                      |
>				> > >                      +-> 3.2.1
>				> > >                          |
>				> > >                          +-> 3.2.1.1 
>				> > > 
>				> > > i imagined the proper W3C way would be to use a URI for the 
>				> > > version and 
>				> > > relate them using syllogisms ?
>				> > > 
>				> > > Paul
>				> > > 
>				> > > 
>				> > > -----Original Message-----
>				> > > From: www-ws-desc-request@w3.org 
>				> > [mailto:www-ws-desc-request@w3.org]On Behalf Of David Orchard
>				> > > Sent: 13 February 2004 17:47
>				> > > To: 'Tom Jordahl'; www-ws-desc@w3.org
>				> > > Subject: RE: Version attribute for WSDL
>				> > > 
>				> > > 
>				> > > I like this as a strawman.  And the idea of not inheriting the version
>				> > > attribute makes a certain sense too, as it requires the "extender" to make a
>				> > > conscious decision.  Though defaulting to "1" does have the problem that the
>				> > > extender might not be compatible.  If there were some way in the "extension"
>				> > > of knowing that the extensions could be ignored, then "1" makes sense.
>				> > > 
>				> > > cheers,
>				> > > Dave
>				> > > 
>				> > > > -----Original Message-----
>				> > > > From: www-ws-desc-request@w3.org 
>				> > > [mailto:www-ws-desc-request@w3.org]On Behalf Of Tom Jordahl
>				> > > > Sent: Friday, February 13, 2004 7:06 AM
>				> > > > To: 'www-ws-desc@w3.org'
>				> > > > Subject: RE: Version attribute for WSDL
>				> > > >
>				> > > >
>				> > > > I guess I understand the desire to have "real" versioning support in WSDL
>				> > > > 2.0.  I do too. But my proposal came out of the F2F, where we had a long,
>				> > > > and I believe fruitless, discussion about all of this.
>				> > > >
>				> > > > I do not believe we can have a section in our specification about versioning
>				> > > > and say "if you want versioning, change the namespace". With a small
>				> > > > addition to the syntax, we can give users some help in managing change in
>				> > > > their web services.
>				> > > >
>				> > > > I am willing to apply semantics to the version attribute if this group
>				> > > > thinks that they can move forward in a productive way.  How about these
>				> > > > changes as a straw man for discussion:
>				> > > >
>				> > > >  - The version attribute is part of the infoset (a.k.a. the component model)
>				> > > >
>				> > > >  - The version attribute has type xsd:positiveInteger
>				> > > >
>				> > > >  - The version attribute has a default value of 1.
>				> > > >
>				> > > >  - The version attribute indicates a "minor" revision of the definition or
>				> > > >    interface. Specifically, a "minor" revision indicates that a client using
>				> > > >    a WSDL with a version attribute less-than the current value is expected
>				> > > >    to continue to function.
>				> > > >
>				> > > >  - When an interface extends another interface, the version attribute of the
>				> > > >    interface is NOT inherited - it must be explicitly set on the interface,
>				> > > >    and if is not, the interface has the default version attribute (1).
>				> > > >
>				> > > > Example 1: Version 1 of my interface has two operations. I release a new
>				> > > > WSDL that adds a third operation, and change the version attribute to 2.
>				> > > > Clients who are using the previous version of the WSDL continue to function.
>				> > > >
>				> > > > Example 2: My WSDL has a purchase order type defined and a target namespace
>				> > > > of "http://example.org/myservice" <http://example.org/myservice> .  I change my purchase order to include
>				> > > > several new elements and rename some of the old ones.  Since this change
>				> > > > will break compatibility, I change the target namespace to
>				> > > > "http://example.org/myservice/v2" <http://example.org/myservice/v2> .  My service can now easily tell the
>				> > > > difference between clients that are using the original WSDL
>				> > > > and the new one.
>				> > > >
>				> > > >
>				> > > > --
>				> > > > Tom Jordahl
>				> > > > Macromedia Server Development
>				> > > >
>				
>				    
>
>
>  
>
Received on Thursday, 19 February 2004 17:20:48 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 5 February 2014 07:15:02 UTC