OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsdm message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [wsdm][UPlat] Versioning idea using namespace attributes in WSDL


Title: Message

Below is an example of how versioning can be implemented using existing namespace mechanisms in WSDL. This will require OASIS to define a set of WSDM attributes in http://oasis-open.org/draft/11/2003/wsdm/ schema. In this schema, version attributes (version, version-change-description, version-predecessor, version-successor, etc.) will be declared along with other wsdm related attributes (relationship attributes, etc.).

 

The advantage of this approach: this WSDL can be processed by client who is not WSDM ready as the wsdm:version attributes will be ignored by clients who don't look for them.

 

<?xml version="1.0" encoding="UTF-8" ?>

<wsdl:definitions targetNamespace="http://acmecorp.com/stockquoteservice/manageability"

   xmlns:wsdm="http://oasis-open.org/draft/11/2003/wsdm/"

   xmlns:impl="http://acmecorp.com/StockQuote"

   xmlns:intf="http://acmecorp.com/StockQuote"

   xmlns:apachesoap="http://xml.apache.org/xml-soap"

   xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"

   xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"

   xmlns:xsd="http://www.w3.org/2001/XMLSchema"

   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

   xmlns="http://schemas.xmlsoap.org/wsdl/">

<wsdl:message name="getTransactionNumberInTheLastHoursResponse">

  <wsdl:part name="transaction_numbers" type="xsd:int" />

  </wsdl:message>

<wsdl:message name="getTransactionNumberInTheLastHoursRequest">

  <wsdl:part name="hours" type="xsd:int" />

  </wsdl:message>

<wsdl:portType name="StockQuoteManageability" wsdm:version="2.1.1"  wsdm:version-change-description=”fixed type on the interface name”>

 <wsdl:operation name="getTransactionNumberInTheLastHours" parameterOrder="hours">

  <wsdl:input name=" getTransactionNumberInTheLastHoursRequest " message="impl:getTransactionNumberInTheLastHoursRequest " />

  <wsdl:output name=" getTransactionNumberInTheLastHoursResponse " message="impl:getTransactionNumberInTheLastHoursResponse " />

  </wsdl:operation>

  </wsdl:portType>

<wsdl:binding name="StockQuoteManageabilitySoapBinding" type="impl:StockQuoteManageability">

  <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />

<wsdl:operation name=" getTransactionNumberInTheLastHours ">

  <wsdlsoap:operation soapAction="" />

<wsdl:input name=" getTransactionNumberInTheLastHoursRequest ">

  <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://acmecorp.com/StockQuote" />

  </wsdl:input>

<wsdl:output name=" getTransactionNumberInTheLastHoursResponse">

  <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://acmecorp.com/StockQuote" />

  </wsdl:output>

<wsdl:service name="StockQuoteManageabilityService" wsdm:version="1.2.2" wsdm:version-predecessor=”1.2.1” >

<wsdl:port name="StockQuoteManageability" binding="impl:StockQuoteManageabilitySoapBinding" >

<wsdlsoap:address location="http://acmecorp.com/StockQuote/Manageability" wsdm:version="1.1.0" />

</wsdl:port>

</wsdl:service>

</wsdl:definitions>

 

Feedback?

 

Cheers,


Andreas



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]