- From: Anish Karmarkar <Anish.Karmarkar@oracle.com>
- Date: Thu, 12 Feb 2009 22:40:22 -0800
- To: "Yalcinalp, Umit" <umit.yalcinalp@sap.com>
- CC: "Rogers, Tony" <Tony.Rogers@ca.com>, ashok.malhotra@oracle.com, Rama Pulavarthi <Rama.Pulavarthi@Sun.COM>, Gilbert Pilz <gilbert.pilz@oracle.com>, Monica Martin <momartin@microsoft.com>, Bob Freund <Bob.Freund@hitachisoftware.com>, ylafon@w3.org, public-ws-addressing@w3.org, Jitendra.Kotamraju@Sun.COM, Ram Jeyaraman <Ram.Jeyaraman@microsoft.com>, wsi_wsbasic@mp.ws-i.org, Fabian Ritzmann <Fabian.Ritzmann@Sun.COM>
In this particular case, how would one know that wsam:AnonymousResponse conflicts with wsam:NonAnonymousResponse unless you have some domain-specific information. These are two different QNames. Based on the responses and the spec, it seems that the following three scenarios are identical: 1) NonAnon on binding and Anon on port 2) A policy on binding (or port) that says: <wsp:All>Anon + NonAnon</wsp:All> 3) NonAnon on binding and Anon on binding/operation (if this were to be allowed) So, I don't quite see why allowing addressing assertion on binding/operation makes things any more problematic than it already is (as far as this specific issue is concerned). -Anish -- Yalcinalp, Umit wrote: > I go away and look what happens :-) Read Section 4.5 carefully, mate. > Not all compatibility is domain specific. If you do not have assertion > params, you have the Qnames to go with for compatibility. The whole idea > is to rely on the types as much as possible and make the exceptions an > exception, not a norm, so that one could rely on a program, not a human > to make the determination of compatibility, whether it is lax or strict. > Thus, compatibility is well defined in a domain-independent world. This > is why parametric assertions of the past became the nested assertions of > today. > > But, I will sign off for now. Have fun! > > HTH, > > --umit > > > > -----Original Message----- > From: Rogers, Tony [mailto:Tony.Rogers@ca.com] > Sent: Thursday, February 12, 2009 4:34 PM > To: ashok.malhotra@oracle.com; Yalcinalp, Umit > Cc: Anish Karmarkar; Rama Pulavarthi; Gilbert Pilz; Monica Martin; Bob > Freund; ylafon@w3.org; public-ws-addressing@w3.org; > Jitendra.Kotamraju@Sun.COM; Ram Jeyaraman; wsi_wsbasic@mp.ws-i.org; > Fabian Ritzmann > Subject: RE: [wsi_wsbasic] Re: WS-AddressingMetadata Maintenance Issue: > (re: [wsi_wsbasic] BP 20133: proposal 1) > > I thought the "explanation" was that policy compatibility was > domain-dependent, and could not be stated in a general way? > > But yes, something of a diversion from topic. > > Tony Rogers > tony.rogers@ca.com > > -----Original Message----- > From: public-ws-addressing-request@w3.org > [mailto:public-ws-addressing-request@w3.org] On Behalf Of ashok malhotra > Sent: Friday, 13 February 2009 11:23 > To: Yalcinalp, Umit > Cc: Anish Karmarkar; Rama Pulavarthi; Gilbert Pilz; Monica Martin; Bob > Freund; ylafon@w3.org; public-ws-addressing@w3.org; > Jitendra.Kotamraju@Sun.COM; Ram Jeyaraman; wsi_wsbasic@mp.ws-i.org; > Fabian Ritzmann > Subject: Re: [wsi_wsbasic] Re: WS-AddressingMetadata Maintenance Issue: > (re: [wsi_wsbasic] BP 20133: proposal 1) > > > Hi Umit, good to hear from you! > > Unfortunately, this is like a eleventh commandment -- Thou shalt not > attach incompatible policies > It does not say how incompatible policies can be detected, nor does it > say what to do when you find incompatible policies > > But I think we are getting away from the original topic. > > All the best, Ashok > > > Yalcinalp, Umit wrote: >> Did we duck or actually say the following in section 4.1? >> >> {It is RECOMMENDED that, where specific policy assertions associated >> with one policy subject are only compatible with specific policy >> assertions on another policy subject in the same hierarchical chain, > the >> policies containing these assertions should be attached within a > single >> WSDL binding hierarchy. >> >> For any given port, the policy alternatives for each policy subject > type >> SHOULD be compatible with each of the policy alternatives at each of > the >> policy subjects parent and child policy subjects, such that choices >> between policy alternatives at each level are independent of each >> other.} >> >> We did not address what should happen when conflicts arise, but the >> recommendation is not to create conflicts in the first place... >> >> --umit >> >> >> -----Original Message----- >> From: public-ws-addressing-request@w3.org >> [mailto:public-ws-addressing-request@w3.org] On Behalf Of ashok > malhotra >> Sent: Thursday, February 12, 2009 3:29 PM >> To: Anish Karmarkar >> Cc: Rama Pulavarthi; Gilbert Pilz; Monica Martin; Bob Freund; >> ylafon@w3.org; public-ws-addressing@w3.org; > Jitendra.Kotamraju@Sun.COM; >> Ram Jeyaraman; wsi_wsbasic@mp.ws-i.org; Fabian Ritzmann >> Subject: Re: [wsi_wsbasic] Re: WS-AddressingMetadata Maintenance > Issue: >> (re: [wsi_wsbasic] BP 20133: proposal 1) >> >> >> Unfortunately, WS-Policy ducked this question. There are many >> situations where you can attach conflicting policies and there is no >> guidance as to what should be done. Note that, in general, it can be > >> difficult to tell if policies are in conflict. >> All the best, Ashok >> >> >> Anish Karmarkar wrote: >> >>> Good question. >>> >>> Shouldn't the answer be the same as what would happen if the > operation >>> >> >>> specific policy was instead attached to the port? This would give you > >>> conflicting policies on binding and port and would have to be merged. > >>> These attachment points are currently allowed by the spec. >>> >>> -Anish >>> -- >>> >>> Rama Pulavarthi wrote: >>> >>>> Some questions on the proposal. >>>> >>>> Gilbert Pilz wrote: >>>> >>>>> As the authors of the proposal in question, Oracle feels obliged to > >>>>> refute the inaccuracies in the arguments presented by our > colleagues >>>>> >> >>>>> from Microsoft and Sun as well as present our case with regards to >>>>> the proposal. >>>>> >>>>> With regards to the particular points: >>>>> >>>>> 1.) What this point fails to mention is that WS-Adressing 1.0 - >>>>> Metadata (WS-AM 1.0) *already* states that the wsam:Addressing >>>>> assertion can be attached to the wsdl11:port or wsd11l:binding. Our > >>>>> proposal *extends* the existing specification to allow this >>>>> assertion to be attached to wsdl11:binding/wsdl11:operation and >>>>> applies this extension to the Operation Policy Subject. Our > proposal >>>>> >> >>>>> does not alter the structure or the semantics of the > wsam:Addressing >>>>> >> >>>>> assertion. >>>>> >>>> What if conflicting policies are attached at the Endpoint policy >>>> subject and Operation policy subject. >>>> For example, on wsdl:binding it is specified as >>>> >>>> <wsp:Policy> >>>> <wsam:Addressing> >>>> <wsp:Policy> >>>> <wsam:NonAnonymousResponses/> >>>> </wsp:Policy> >>>> </wsam:Addressing> >>>> and on the </wsp:Policy> >>>> >>>> and on |wsdl11:binding/wsdl11:operation >>>> | >>>> >>>> <wsp:Policy> >>>> <wsam:Addressing> >>>> <wsp:Policy> >>>> <wsam:AnonymousResponses/> >>>> </wsp:Policy> >>>> </wsam:Addressing> >>>> and on the </wsp:Policy> >>>> >>>> Which one should be used?, How is the effective policy for that >>>> operation calculated? >>>> Its not precedence but a merge of these policies that is used to >>>> calculate the effective policy as per >>>> http://www.w3.org/TR/2007/REC-ws-policy-attach-20070904/#merge. >>>> >>>> Is BP going to specify all the Addressing domain specific rules to >>>> handle merging of conflicting policies? >>>> >>>>> 2.) The assertion that this proposal conflicts with WS-Policy best >>>>> practices is false. Reference [3] below includes the following > text: >>>>> When the assertion's semantics do not change to invalidate any >>>>> >> of >> >>>>> the original policy subjects but new policy subjects need to be >>>>> added, it may be possible to use the same assertion to > designate >>>>> the additional policy subjects without a namespace change. For >>>>> example, a policy assertion for a protocol that is originally >>>>> designed for endpoint policy subject may add message policy >>>>> subject to indicate finer granularity in the attachment > provided >>>>> that endpoint policy subject is also retained in its design. >>>>> >> When >> >>>>> new policy subjects are added it is incumbent on the authors to >>>>> retain the semantic of the policy assertion >>>>> >>>>> Since our proposal includes this text: >>>>> >>>>> When the WS-Addressing policy assertion occurs on the >>>>> wsdl11:binding/wsdl11:operation element, it applies to the >>>>> operation policy subject. Nevertheless, it should always be the >>>>> case that if one operation of an endpoint supports or requires >>>>> WS-Addressing, then all operations must support or require >>>>> WS-Addressing (although, potentially, with different >>>>> >> restrictions) >> >>>>> and the following requirement: >>>>> >>>>> Ryyyy: /In a /*DESCRIPTION*/, if any operation of a WSDL 1.1 >>>>> endpoint supports or requires WS-Addressing, then all the >>>>> operations of that endpoint MUST support or require >>>>> >> WS-Addressing./ >> >>>> /As I understand, This goes against the policy scopes/ and effective > >>>> policy calculation as defined in >>>> >>>> > http://www.w3.org/TR/2007/REC-ws-policy-attach-20070904/#CalculatingEffe >> ctivyPolicywithWSDL1.1 >> >>>> How can a policy specified at Operation policy subject affect the >>>> effective policy at the Endpoint policy subject? The policy >>>> specified at Operation scope can add more non conflicting >>>> requirements to the policy specified at a higher level that will be >>>> effective only for that operation. >>>> >>>> >>>> thanks, >>>> Rama Pulavarthi >>>> >>>>> it is clear that the semantics of the wsam:Addressing policy >>>>> assertion are being retained and thus we are adhering to the >>>>> guidelines described in [3]. >>>>> >>>>> 3.) The claim that our proposal "disregards the existing structure >>>>> of the WS-AM policy assertions" and jeopardizes backwards >>>>> compatibility is false. As stated previously, our proposal does >>>>> nothing to change the structure or the semantics of the >>>>> wsam:Addressing assertion, it simply extends where such assertions >>>>> can be attached. Furthermore, since it is an extension, our > proposal >>>>> >> >>>>> logically cannot affect backwards compatibility. The > implementations >>>>> >> >>>>> that interoperated at [5] should, baring any unrelated changes, >>>>> continue to interoperate under the same test scenarios. >>>>> >>>>> 4.) The assertion that this change is "substantive" is subjective. >>>>> The notion that this extension conflicts with the existing >>>>> wsam:Addressing semantics has been addressed above. >>>>> >>>>> The case for this proposal is straightforward: The current >>>>> WS-Addressing 1.0 - Metadata specification is technically > deficient. >>>>> >> >>>>> It does not allow you to describe an interface that contains both >>>>> synchronous and asynchronous operations. Input from our customers >>>>> indicates that this is a common and important use case. The Web >>>>> Services Test Forum provides an example of this in its Purchase >>>>> Order Service scenario >>>>> (http://www.wstf.org/docs/scenarios/sc009/sc009.xml). Although > there >>>>> >> >>>>> are workarounds for this problem, they have side-effects that >>>>> undermine the simplicity and utility of the interface description. >>>>> >>>>> One of the reasons Oracle raised this issue is the fact that this >>>>> technical deficiency is the result of an oversight by the W3C >>>>> Addressing Working Group, not the result of a deliberate decision. >>>>> In the WS-Addressing 1.0 - WSDL Binding specification, the >>>>> wsaw:Anonymous element extended the wsd11:binding/wsdl11:operation >>>>> element thus allowing you to specify that a particular operation > was >>>>> >> >>>>> either synchronous or asynchronous. As the WSDL Binding >>>>> specification evolved into the Metadata specification, the >>>>> wsam:AnonymousResponses and wsam:NonAnonymousResponses assertions >>>>> (which each express a distinct value of what was wsaw:Anonymous) >>>>> were folded into nested assertions beneath the top-level >>>>> wsam:Addressing assertion. Although this change was, in itself, >>>>> technically correct, it had the side-effect of removing the ability > >>>>> to specify synchronous/asynchronous behavior at the operation level > >>>>> since , as we have discussed, wsam:Addressing can currently only be > >>>>> attached to the wsdl11:port or wsdl11:binding and has Endpoint >>>>> Policy Subject. Our proposal seeks to correct this flaw in a way >>>>> that preserves the semantics of wsam:Addressing. >>>>> >>>>> Finally, we brought this issue to the WS-I Basic Profiles Working >>>>> Group because the W3C WS-Addressing Working Group is closed. >>>>> Although there have been some discussions about creating a group to > >>>>> maintain the WS-Addressing specifications within the W3C it seems >>>>> unlikely, at this time, that such a group will be created. Since >>>>> correcting profiled specifications has some precedent in WS-I and >>>>> the Basic Profile Working Group, it seems to be the best place to >>>>> attempt to fix this problem. >>>>> >>>>> Gilbert Pilz | SOA/WS Technologist | Middleware Standards | Oracle >>>>> Corporation >>>>> >>>>> Monica Martin wrote: >>>>> >>>>>> An issue has been filed in the WS-I Basic Profile WG that belongs >>>>>> to WS-Addressing WG with possible assistance from the WS-Policy > WG. >>>>>> >> >>>>>> The issue was filed in WS-I Basic Profile WG because the >>>>>> WS-Addressing WG was closed. The issue seeks to overturn a >>>>>> fundamental concept and constraint in WS-Addressing-Metadata 1.0 >>>>>> and could conflict with WS-Policy best practices. We've > paraphrased >>>>>> >> >>>>>> the features sought, requirements requested and potential conflict > >>>>>> it presents for existing implementations of WS-Addressing Metadata > >>>>>> 1.0. As a WS-A Core schema change was handled in late July 2008 > by >>>>>> >> >>>>>> W3C on behalf of the WS-Addressing WG [1], can you assist us in >>>>>> clarifying and resolving this issue? >>>>>> >>>>>> The proposed changes: >>>>>> 1. Overturn a WS-AM 1.0 restriction that wsam:Addressing be > limited >>>>>> >> >>>>>> to an endpoint policy subject [2]: Mandates these assertions be >>>>>> attached to a WSDL 1.1 port, binding or >>>>>> >> wsdl11:binding/wsdl:operation. >> >>>>>> 2. Could conflict with WS-Policy best practices on altering >>>>>> semantics of existing assertions for a policy subject: Allows a >>>>>> policy assertion to be used across different policy subjects >>>>>> without versioning or a clear indication how to differentiate >>>>>> semantics for assertion implementers. [3] >>>>>> 3. Disregards the existing structure of WS-AM policy assertions >>>>>> that can support such a Description without this change and > without >>>>>> >> >>>>>> jeopardizing backward compatibility [4]: This proposal affects >>>>>> interoperable implementations that tested in July 2007 into >>>>>> non-conforming implementations. [5] >>>>>> 4. Introduces a substantive change or new conflicting feature to >>>>>> WS-AM. >>>>>> >>>>>> Can you also advise what is the maintenance plan for the >>>>>> WS-Addressing WG? Can you comment or act on this substantive WS-AM > >>>>>> change? Are you in agreement to such a change in WS-I? [6] >>>>>> >>>>>> Your prompt attention would be appreciated. Responses can be >>>>>> directed to the chair of the WS-I Basic Profile WG. Thanks. >>>>>> >>>>>> Jitendra Kotamraju, Sun Microsystems >>>>>> Monica J. Martin, Microsoft Corporation >>>>>> >>>>>> [1] IBM request resolution: >>>>>> >>>>>> > http://lists.w3.org/Archives/Public/public-ws-addressing/2008Jul/0001.ht >> ml >> >>>>>> [2] The same approach was also taken by SOAP/XMLP for MTOM. >>>>>> [3] The wsam:Addressing policy assertion is applied on multiple >>>>>> policy subjects with differing semantics - No versioning is use. > No >>>>>> >> >>>>>> mechanism is provided for existing implementations to be backward >>>>>> compatible. Clients may be unable to find a compatible policy. >>>>>> >>>>>> > http://www.w3.org/TR/2007/NOTE-ws-policy-guidelines-20071112/#supporting >> -new-policy-subjects, >> >> > http://www.w3.org/TR/2007/NOTE-ws-policy-guidelines-20071112/#bp-WSDL-mu >> ltiple-policy-subjects, >> >> > http://www.w3.org/TR/2007/NOTE-ws-policy-primer-20071112/#versioning-pol >> icy-language, >> >> > http://www.w3.org/TR/2007/REC-ws-policy-attach-20070904/#CalculatingEffe >> ctivyPolicywithWSDL1.1 >> >>>>>> and >>>>>> >>>>>> > http://www.w3.org/TR/2007/NOTE-ws-policy-guidelines-20071112/#versioning >> -policy-assertions >> >> > <http://www.w3.org/TR/2007/NOTE-%0Aws-policy-guidelines-20071112/#versio >> ning-policy-assertions> >> >>>>>> [4] A portType can be separated into two separate ones, one which >>>>>> contains one type of operations and the other which targets > another >>>>>> >> >>>>>> type. This description supports interface related features sought >>>>>> by tools as was envisioned by W3C. [5] >>>>>> http://dev.w3.org/2004/ws/addressing/testsuitewsdl/report/ >>>>>> [6] http://www.w3.org/2005/10/Process-20051014/tr.html#rec-modify >>>>>> and >>>>>> >>>>>> >> http://www.w3.org/2005/10/Process-20051014/tr.html#correction-classes >> >>>>>> >>>>>> Notice: This email message, together with any attachments, may >>>>>> contain information of BEA Systems, Inc., its subsidiaries >>>>>> and affiliated entities, that may be confidential, proprietary, >>>>>> >> >>>>>> copyrighted and/or legally privileged, and is intended solely for > >>>>>> the use of the individual or entity named in this message. If you >>>>>> are not the intended recipient, and have received this message in >>>>>> error, please immediately return this by email and then delete it. >>>>>> >>>>>> >> >> > > >
Received on Friday, 13 February 2009 06:41:29 UTC