In OWL ontology, let's have:
P Domain A
P Range B
A subClassOf P max 1 Thing
Asking a DL query
(1) P max 1 Thing
will return A; OK
Asking
(2) P exactly 1 Thing or P exactly 0 Thing
will return A as well.
However; asking
(3) P exactly 1 Thing
will return Nothing. And asking
(4) P exactly 0 Thing
will return Nothing as well.
I thought that the union of (3) + (4) results is equivalent to the result of (2). Unfortunately, it's not! Why?