EXCLUSIVE UNION
In set theory, union is inclusive; that is, given sets s1 and s2, an element appears in their union if and only if it appears in either or both of s1 or s2. Thus, UNION can be seen as the set theory counterpart to logical OR, which is inclusive in a similar sense. But logic additionally defines an exclusive version of OR (XOR), and so we can define an exclusive union operator analogously: The exclusive union (XUNION) of two sets s1 and s2 is the set of elements appearing in s1 or s2 but not both. And, of course, we can define a relational version of this operator as well:
Definition: Let relations r1 and r2 be of the same type; then their exclusive union, r1 XUNION r2, is a relation of the same type, with body consisting of all tuples t such that t appears in r1 or r2 but not both.
For example (assuming as we did in Chapter 6, in the section UNION, INTERSECTION, AND DIFFERENCE, that parts have an extra attribute called STATUS, of type INTEGER):

Tutorial D also supports an n-adic form of XUNION. However, the details are a little tricky; for that reason, I’ll just give a definition here, without further discussion. You can find more details, if you’re interested, in the paper “N-adic vs. Dyadic Operators: An Investigation” (see Appendix G).
Definition: Let relations r1, r2, ..., rn (n ≥ 0) all be of the same type T. Then the expression XUNION{r1,r2,...,rn} denotes a relation ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access