- From: Francisco Curbera <curbera@us.ibm.com>
- Date: Wed, 25 Oct 2006 15:04:15 -0400
- To: public-ws-addressing@w3.org
- Cc: Anish Karmarkar <Anish.Karmarkar@oracle.com>
- Message-ID: <OFC596FE36.447C5FA1-ON85257212.006883B0-85257212.0068C240@us.ibm.com>
Here is the compatibility analysis for the two options in our proposal. Thansk to Anish who did almost all the work. Paco ====================================== Option 1 (3 new extensions): 1) Older client, older service No change. 2) Older client, newer service Newer service will have WSDL extensions that would not be understood by the older client. a) wsdl:required='false' on the extensions: Older client will act as if no WSDL markers are present. I.e., older client will not be aware that the service supports WS-Addressing. b) wsdl:requried='true' on the extensions: Older clients will barf and not process the WSDL. 3) Newer client, older service Newer client will not understand the older WSDL extensions present on the service. a) wsdl:required='false' on the extensions: Newer client will act as if no WSDL markers are present. I.e., newer client will not be aware that the service supports WS-Addressing. b) wsdl:requried='true' on the extensions: Newer client will barf and not process the WSDL. 4) Newer client, Newer service Client will understand and correctly process the WSDL describing the service. Option 2 (2 new extension + reuse wsaw:UsingAddressing): There are two possibilities here: UsingAddressing is in the old NS or in a new NS. If it is in a new NS, wrt compatibility the situation is no different than option 1. If it is in the old NS, then: 1) Older client, older service No change. 2) Older client, newer service Newer service may have WSDL extensions that would not be understood by the older client. a) wsdl:required='false' on the new extensions: Older client will act as if no WSDL markers are present. I.e., older client will not be aware that the service supports WS-Addressing. b) wsdl:requried='true' on the new extensions: Older clients will barf and not process the WSDL. When the wsaw:UsingAddressing is present the older client will understand the extension and behave as expected, which implies no statement regarding the requirement or prohibition of using the anonymous URI. Client will only find if there is a problem at runtime, after receiving a fault. 3) Newer client, older service Newer client will not understand the older WSDL extensions (wsaw:Anonymous) present on the service. Since wsdl:required is not allowd on wsaw:Anonymous, the newer client will never barf. Newer client will understand and process the wsaw:UsingAddressing extension correctly, but will ignore additional information present in wsaw:Anonymous. Errors may show up at runtime. 4) Newer client, Newer service Client will understand and correctly process the WSDL describing the service.
Received on Wednesday, 25 October 2006 19:04:55 UTC