W3C home > Mailing lists > Public > www-rdf-logic@w3.org > April 2005

Re: Cardinality in the open world

From: Jos de Bruijn <jos.debruijn@deri.org>
Date: Wed, 06 Apr 2005 10:47:32 +0200
Message-ID: <4253A224.5030705@deri.org>
To: Paul Gearon <gearon@itee.uq.edu.au>
CC: www-rdf-logic@w3.org

Hi Paul,

I agree with you that the allowed entailments in the presence of
cardinality restrictions (and also universal value restrictions) might
be counter-intuitive. People who are familiar with databases might
expect the closed-world and unique name assumptions.

A paper on this topic [1] will be presented at the upcoming WWW conference.


Best, Jos

[1] Jos de Bruijn, Axel Polleres, Rubén Lara, and Dieter Fensel: OWL DL
vs. OWL Flight: Conceptual Modeling and Reasoning for the Semantic Web,
Proceedings of the 14th International World Wide Web Conference
(WWW2005), Chiba, Japan, 2005.
http://www.uibk.ac.at/~c703239/publications/f525-debruijn.pdf

Paul Gearon wrote:
> 
> Hi,
> 
> I've been having some difficulty understanding the use of OWL
> cardinality with the open world assumption, and I'd like some advice
> please.
> 
> While I know that the open world assumption means that any unspecified
> statements are "unknown".  I interpret this to mean that it is possible
> for any unwritten statement to exist.  (If I'm wrong here, then let me
> know as the rest of this message is based on this assumption).
> 
> For owl:minCardinality on a predicate there would seem to be 3 situations:
> 
> minCardinality of 0:
> This is trivially consistent and valid.
> 
> minCardinality of 1:
> This describes existence.  Any statements with this predicate make the
> model valid.  However, if there are no statements with the predicate
> then the model is still consistent, as those statements could exist.
> 
> minCardinality > 1:
> If there are not enough statements using the predicate, then the model
> will still be consistent because those statements could exist.  In other
> words, there exists an interpretation which would make this true.
> 
> The only case where this could not be consistent would be if it is not
> legal to create the required statements.  The only instance of this that
> I can think of is if the range of the predicate is restricted in some
> way, for instance it could be a oneOf without enough members.  However,
> that case would be a fault in the ontology, not in the data.
> 
> For validity, it may seem easy to conform if there are enough statements
> with the predicate.  However, if any objects from these statements use
> owl:sameAs to declare that they are the same, the real usage of this
> predicate will be reduced, making the model invalid.  The only way
> validity can be guaranteed is if enough of the objects are declared to
> be different from the others, via owl:differentFrom or owl:allDifferent.
> 
> 
> So for all 3 cases, the model is always consistent.  Validity is
> guaranteed for cardinality of 0, possible with cardinality of 1, and
> difficult for cardinality of more than 1.
> 
> 
> owl:maxCardinality is similar:
> 
> maxCardinality of 0:
> If the predicate is not used, then there is an interpretation where the
> model is consistent.  However, since there may exist statements which
> use the predicate, then the model can't be valid.
> 
> maxCardinality >= 1:
> If the predicate is used fewer times than the maxCardinality, then this
> is consistent.  However, there may be more statements, except when the
> range is restricted (eg. with owl:oneOf), which means that validity can
> rarely be proven.
> 
> If the predicate is used more times than the maxCardinality, then this
> would appear to inconsistent.  However, it is possible for some of the
> objects to be declared the same as each other with owl:sameAs.  This
> would reduce the effective number of times the predicate is used,
> possibly making it consistent again.  The only way to guarantee
> inconsistency is if the objects are all different with owl:differentFrom
> and owl:allDifferent.
> 
> 
> So for maxCardinality of 0 the model will be invalid, and for
> maxCardinality of 1 validity is only provable for a particular case (and
> not for the general case).  Consistency can be proven for cardinality of
> 0, and is very difficult to disprove for cardinality of 1 or more.
> 
> 
> Is validity an interesting property in a real-world database?  I would
> have thought that consistency would be more important, particularly
> since validity is rarely possible to prove.  If validity *is* important,
> then maxCardinality has a problem, because the model can't be valid in
> the general case.
> 
> As for consistency, minCardinality is *always* consistent. 
> maxCardinality is almost always consistent as well (the model needs to
> go to a lot of with owl:differentFrom to be inconsistent).
> 
> If my interpretation here is correct, then these cardinality constraints
> would not appear to be be as useful as they seem.  It looks very much
> like these constraints were designed for a closed world assumption, not
> the open world.
> 
> Can someone enlighten me here please?  TIA.
> 
> Regards,
> Paul Gearon
> 
> 
> 
> 
> 

-- 
Jos de Bruijn, http://homepage.uibk.ac.at/~c703239/
+43 512 507 6475
                              jos.debruijn@deri.org

Digital Enterprise Research Institute (DERI)
                               http://www.deri.org/
Received on Wednesday, 6 April 2005 08:47:57 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:52:50 GMT