Search Mailing List Archives
[protege-owl] Cardinality restrictions in OWL
j.m.wright at massey.ac.nz
Mon Aug 3 20:36:58 PDT 2009
I'm trying to define an ontology in Protege 4.0/OWL which essentially
says that all Containers must contain at least two Nodes. I have
defined the following ontology:
SubClassOf(Container ObjectMinCardinality(2 contains Node))
If I only create the one Container individual and no Node individuals,
and ask the FaCT++ reasoner to execute over this ontology, no error
occurs, even though I have defined a Container individual which does
not contain any Nodes.
Approaching from another angle, if I change container to restrict the
maximum number of contained nodes to 2, and create three individual
nodes contained within it:
SubClassOf(Container ObjectMaxCardinality(2 contains Node))
ObjectPropertyAssertion(contains SampleContainer Node1)
ObjectPropertyAssertion(contains SampleContainer Node2)
ObjectPropertyAssertion(contains SampleContainer Node3)
Reasoning with FaCT++ also produces no error, even though (I think)
this instance also clearly invalidates the OWL model I defined.
Is there a problem behind my OWL model, or a problem with how I am
using the reasoner? Any help would be appreciated.
More information about the protege-owl