[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 Friday, 11 May 2007 15:31:08 UTC