4

Usually when we say "all of my children are female" we intend to imply "and there's at least one of them". The famed pizza tutorial (V1.3) addresses this on page 100 saying that it's usually an error to have a universal restriction (owl:allValuesFrom) without an existential restriction (owl:someValuesFrom).

owl:someValuesFrom is sort of a back-handed way of saying "and there's at least one". Is there any logical, performance or aesthetic reason not to instead use "owl:minCardinality"?

ericP
  • 1,675
  • 19
  • 21
  • 1
    **"all of my children are female" we intend to imply "and there's at least one of them"** For that phrase, that's true, but this very much depends on context. If I said something like (knowing, perhaps, about some genetic condition) "he can only have female children", I'm not saying anything about whether or not he has children. That's what the allValuesFrom restriction captures. In some senses, it captures a type of compatibility. – Joshua Taylor Jul 08 '14 at 13:10
  • Also see this answers.semanticweb.com question, [allvaluesfrom without somevaluesfrom](http://answers.semanticweb.com/questions/28985/allvaluesfrom-without-somevaluesfrom), which begins with *"Here and there we see a proposed pattern: "if there is an allvaluesfrom there should also be a somevaluesfrom (example: vegetarian pizza in protege tutorial). I have the feeling that there are many cases (like optional properties that you want to constrain by allvaluesfrom IN CASE they are there)."* – Joshua Taylor Jul 11 '14 at 01:23
  • See the same question that Joshua linked for comments on examples of universal restrictions that do NOT want to be intersected with existential restrictions. The "usually an error" is an excessive position. – Ignazio Jul 11 '14 at 06:14
  • I've quoted the tutorial paragraph in question. Notice how the error mentioned could be the lack of an existential restriction /or/ an error in the modelling of the universal restriction, but both depend on the actual concepts being modeled. – Ignazio Jul 11 '14 at 06:21

1 Answers1

5

owl:someValuesFrom is sort of a back-handed way of saying "and there's at least one". Is there any logical, performance or aesthetic reason not to instead use "owl:minCardinality"?

OWL is built on Description Logic, and one of the important aspects of the development of Description Logics has been examining the complexity of reasoning algorithms when different language features are present. Have a look, for instance, at the Description Logic Complexity Navigator where you see the complexity of different description logics.

Languages that have someValuesFrom but not minCardinality may be easier to reason in than those that have general cardinality restrictions (like minCardinality). Of course, you're right in observing that in OWL 2, where you have both, that we do have the equivalence ∃ p.C ≡ ≥1 p.C. In OWL 1, however, there were qualified existential restrictions, so you could use ∃ p.C, but no qualified cardinality restrictions. That is, you could say ≥1 p, but not ≥1 p.C. That means that in OWL 1, you can say

∃ hasChild.Female

and

≥1 hasChild

but not

≥1 hasChild.Female

That alone might be a good enough reason to prefer the ∃ version when all you need to say is "at least one"; you get backward compatibility, which may be very important for reasoners that support OWL 1, but not (all of) OWL 2.

Joshua Taylor
  • 84,998
  • 9
  • 154
  • 353