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

Re: Version attribute for WSDL

From: Roberto Chinnici <Roberto.Chinnici@Sun.COM>
Date: Thu, 12 Feb 2004 12:56:32 -0800
To: Sanjiva Weerawarana <sanjiva@watson.ibm.com>
Cc: Tom Jordahl <tomj@macromedia.com>, www-ws-desc@w3.org
Message-id: <402BE880.8010207@sun.com>

I had the same thought as Sanjiva. Doing versioning right is quite tricky,
and a complete solution would definitely need to address the issue of
tagging with a version the wsdl:import/xsd:import constructs (and perhaps
more generally, all "referencing" constructs, not just "defining" ones).

Rather than going down that path at this stage, I'd prefer to see the
proposal be rejected altogether or alternatively scaled down to a
"version" attribute on wsdl:definitions (only), a la XML Schema.

One more point: if version information has to be useful at all, even with
very fuzzy semantics, it *must* end up in the component model.

Thanks,
Roberto


Sanjiva Weerawarana wrote:
> Hi Tom,
> 
> I'm confused as to the value of adding a version attribute that
> the users get to provide semantics for. How is that ever going
> to interoperate??
> 
> Also, doesn't import need to allow a way to indicate which
> version of stuff to import? What about during inheritance -
> when I say "extends x:foo" do I now need to indicate which
> version of x:foo I extend?
> 
> I tried to get a simple version attribute type thing supported
> inside IBM and got trashed .. these are some of the issues
> that got brought up.
> 
> Sanjiva.
> 
> ----- Original Message -----
> From: "Tom Jordahl" <tomj@macromedia.com>
> To: <www-ws-desc@w3.org>
> Sent: Thursday, February 12, 2004 10:11 PM
> Subject: RE: Version attribute for WSDL
> 
> 
> 
>>Correct, the value of the attribute is not part of the WSDL component
> 
> model.
> 
>>See the XML Schema version attribute for how this works. :-)
>>
>>I am not opposed to including it in the component model, but one of the
>>attraction of this proposal is that "the specification would define no
>>semantics for it", which I lifted from the Schema spec.  This allows users
>>to apply their OWN versioning semantics, with the guidance from the WSDL
>>spec being that if the value of the attribute changed from the last time
> 
> you
> 
>>saw it, is it likely that the document or interface has changed.
>>
>>--
>>Tom Jordahl
>>Macromedia Server Development
>>
>>
>>-----Original Message-----
>>From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] On
>>Behalf Of Amelia A Lewis
>>Sent: Thursday, February 12, 2004 9:22 AM
>>To: Tom Jordahl
>>Cc: 'www-ws-desc@w3.org'
>>Subject: Re: Version attribute for WSDL
>>
>>
>>I like versioning, but I'm really unclear on how one adds an attribute
>>in XML that isn't in the infoset.  Does this mean, perhaps, that it
>>isn't part of the WSDL component model?
>>
>>Amy!
>>On Feb 12, 2004, at 9:13 AM, Tom Jordahl wrote:
>>
>>
>>>
>>>In fulfillment of my action item received at the January F2F, here is a
>>>proposal to add a version attribute to WSDL to aid in the versioning
>>>of WSDL
>>>documents and interfaces.
>>>
>>>I propose that an attribute with the name "version" be added to the
>>><definitions> element of WSDL.  This attribute is for user
>>>convenience, and
>>>the specification would define no semantics for it, specifically the
>>>value
>>>of this attribute would NOT be included in the infoset.  However, it is
>>>expected that WSDL authors and consumers can use this attribute, when
>>>present, to differentiate between different revisions of a WSDL
>>>document.
>>>
>>>Example:
>>>
>>><definitions version="1" targetNamespace=http://sample.org/>
>>>...
>>></definitions>
>>>
>>>This proposal is modeled after the version attribute of XML Schema, see
>>>section 3.15.2 in Part 1 of the XML Schema specification:
>>>  http://www.w3.org/TR/xmlschema-1/#Schemas
>>>
>>>In our specification, section 2.1.2 would be updated to include the new
>>>attribute:
>>>
>>>2.1.2 XML Representation of Definitions Component
>>>
>>><definitions
>>>      targetNamespace="xs:anyURI"
>>>      version = "xs:token"? >
>>>  <documentation />?
>>>  [ <import /> | <include /> ]*
>>>  <types />?
>>>  [ <interface /> | <binding /> | <service /> ]*
>>></definitions>
>>>
>>>
>>>Additionally, I propose that a similar version attribute be added to
>>>the
>>><interface> element of WSDL. This attribute would mirror the
>>>definitions
>>>attribute.  Again, this would be for user convenience, and the
>>>specification
>>>would define no semantics for it, specifically the value of this
>>>attribute
>>>would NOT be included in the infoset.  WSDL authors and consumers
>>>could use
>>>this attribute, when present, to differentiate between different
>>>revisions
>>>of an interface.  In particular, this would enable a consumer of the
>>>document to know explicitly when an interface they are using has
>>>changed.
>>>
>>>Example:
>>><definitions>
>>>  <interface name="myInterface" version="alpha17">
>>>    ...
>>>  </interface>
>>></definitions>
>>>
>>>
>>>2.2.2 XML Representation of Interface Component
>>><definitions>
>>>  <interface
>>>        name="xs:NCName"
>>>        extends="list of xs:QName"?
>>>        styleDefault="xs:anyURI"?
>>>        version = "xs:token"? >
>>>    <documentation />?
>>>    [ <operation /> | <feature /> | <property /> ]*
>>>  </interface>
>>></definitions>
>>>
>>>
>>>--
>>>Tom Jordahl
>>>Macromedia Server Development
Received on Thursday, 12 February 2004 15:56:40 UTC

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