Action-297 - Example Policies that Don't Interesect

>ACTION-297 Asir to provide a proposal that adds an
>example to 4.5 Policy Intersection that calls out
>the non-matching case from Ashok's email

Here is a proposal that illustrates two policies whose intersection contain no policy alternatives ...


As another example of intersection, consider two input policies:

(01) <wsp:Policy
       xmlns:wsp="http://www.w3.org/ns/ws-policy"
       xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" >
(02)   <wsp:ExactlyOne>
(03)     <wsp:All>        <!-- Alternative A5 -->
(04)       <wsam:Addressing>
(05)         <wsp:Policy/>
(06)       </wsam:Addressing>
(07)     </wsp:All>
(08)   </wsp:ExactlyOne>
(09) </wsp:Policy>

Lines (04)-(06) in the above policy expression contain an addressing policy assertion with the empty <wsp:Policy/> in line (05). The empty <wsp:Policy/> is a nested policy expression with an alternative that has zero assertions. In the example above, the addressing assertion indicates the use of addressing without any restriction.

(01) <wsp:Policy
       xmlns:wsp="http://www.w3.org/ns/ws-policy"
       xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" >
(02)   <wsp:ExactlyOne>
(03)     <wsp:All>       <!-- Alternative A6 -->
(04)       <wsam:Addressing>
(05)         <wsp:Policy>
(06)           <wsam:AnonymousResponses/>
(07)         </wsp:Policy>
(08)       </wsam:Addressing>
(09)     </wsp:All>
(10)   </wsp:ExactlyOne>
(11) </wsp:Policy>

Lines (04)-(08) in the above policy expression contain an addressing policy assertion with a nested policy expression in lines (05)-(06). The nested policy expression indicates that the provider requires request messages to use response endpoint EPRs that contain the anonymous URI. The nested policy expression contains an alternative that has one assertion, wsam:AnonymousResponses.

The two assertions in alternatives A5 and A6 have the same assertion type and have nested policy expressions. The nested policy expression within the addressing assertion in the alternative A5 contains an alternative that has zero assertions. The nested policy expression within the addressing assertion in the alternative A6 contains an alternative that has one assertion. The nested policy expressions within these two assertions are incompatible because the alternative in one is incompatible with the alternative in the other.

The two assertions in alternatives A5 and A6 are incompatible because their nested policy expressions are incompatible. The two alternatives A5 and A6 are incompatible because the assertions within these two alternatives are incompatible. The above two policies are incompatible because there are no compatible alternatives.

Regards,

Asir S Vedamuthu
Microsoft Corporation

Received on Wednesday, 16 May 2007 02:21:00 UTC