W3C home > Mailing lists > Public > public-ws-policy@w3.org > May 2007

Re: FW: [Bug 4553] Exact meaning of "all of the assertions in both alternatives"

From: David Hull <dmh@tibco.com>
Date: Tue, 15 May 2007 23:35:11 -0400
Message-ID: <464A7BEF.6080504@tibco.com>
To: Asir Vedamuthu <asirveda@microsoft.com>
CC: "public-ws-policy@w3.org" <public-ws-policy@w3.org>
Asir Vedamuthu wrote:
>> * Bag union: [A B B B C C C C C D D] (all
>> occurrences of all assertions from 1
>> together with all occurrences of all assertions from 2)
>>     
>
> Your first interpretation is correct!
>
> The phrase "all of the assertions" is neither set union nor set intersection. It literally means all of the assertions in both alternatives.
>
> If you think the phrase "all of the assertions" does not capture the intent, may I request you to propose a concrete wording?
>   
This is where one gets into trouble using lesser-known structures like
bags.  It would be nice to say

"If two alternatives are compatible, their intersection is the bag union
of the two alternatives."

Unfortunately, "bag union" is not a widely-recognized term.  Another
attempt would be to refer to policy expressions, since just
concatenating the contents of two (normalized) <All> expressions will
produce an expression for the bag union (which, I suspect, is why "all
of the assertions in both alternatives" may seem obvious). 
Unfortunately, we're defining an operation on policies, not policy
expressions.  I suppose you could say

"If two alternatives are compatible, their intersection may be
represented by a policy expression formed by concatenating their
normalized expressions."

It's a mouthful, but it probably comes closest to capturing the
intuition behind the original statement.  Failing that, you could bite
the bullet and spell out bag union here:

"If two alternatives are compatible, their intersection is an
alternative in which the multiplicity of each assertion is the sum of
the multiplicities in the two alternatives."

or something equally unwieldy.

Finally, if you prefer to keep the original wording, at least gloss it:

"If two alternatives are compatible, their intersection is an
alternative containing all of the assertions in both alternatives (i.e.,
the bag union of the two)."

That's probably close enough.  It also reinforces that you don't mean
just any alternative containing all of the assertions in both
alternatives, but one containing /only/ those assertions.
> Regards,
>
> Asir S Vedamuthu
> Microsoft Corporation
>
>
> -----Original Message-----
> From: public-ws-policy-qa-request@w3.org [mailto:public-ws-policy-qa-request@w3.org] On Behalf Of bugzilla@wiggum.w3.org
> Sent: Friday, May 11, 2007 8:31 AM
> To: public-ws-policy-qa@w3.org
> Subject: [Bug 4553] Exact meaning of "all of the assertions in both alternatives"
>
>
> http://www.w3.org/Bugs/Public/show_bug.cgi?id=4553
>
>            Summary: Exact meaning of "all of the assertions in both
>                     alternatives"
>            Product: WS-Policy
>            Version: CR
>           Platform: All
>                URL: http://lists.w3.org/Archives/Public/public-ws-
>                     policy/2007May/0019.html
>         OS/Version: All
>             Status: NEW
>           Severity: normal
>           Priority: P2
>          Component: Framework
>         AssignedTo: fsasaki@w3.org
>         ReportedBy: dmh@tibco.com
>          QAContact: public-ws-policy-qa@w3.org
>
>
> It is not clear which of three operations is meant in the statement (in section
> 4.5) that "If two alternatives are compatible, their intersection is an
> alternative containing all of the assertions in both alternatives".  I can see
> four significantly different possible interpretations of this.  Suppose
> alternative 1 consists of [A B B C C C] and alternative 2 consists of [B C C D
> D].  Then the "intersection" of these could be
>
> * Bag union: [A B B B C C C C C D D] (all occurrences of all assertions from 1
> together with all occurrences of all assertions from 2)
> * Bag intersection: [B C C] (A is not in both, B occurs (at least) once in
> both, C occurs (at least) twice in both, D is not in both)
> * Set union: {A B C D} (all assertions from 1 together with all assertions from
> 2)
> * Set intersection: {B C} (all assertions occurring in both 1 and 2).
>
> Though set intersection and set union seem to match the text most closely, it
> seems unlikely that this is what is meant, given that alternatives are bags and
> multiplicity is in some way significant.
>
> The spec should say explicitly which operation is meant.
>
>   
Received on Wednesday, 16 May 2007 03:35:40 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:38:34 UTC