- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Thu, 20 Dec 2007 10:57:27 -0500 (EST)
- To: jjc@hpl.hp.com
- Cc: public-owl-wg@w3.org
Summary: I don't yet see any particular problems. Note: I also don't see that this is only related to cardinalities, as related issues arise with things like ObjectPropertyAssertion(eg:p eg:a eg:a) ClassAssertion(eg:a DataAllValuesFrom(eg:p xsd:integer)) (The mention of cardinalities had lead me to think that the issue had something to do with a punned name counting as more than one domain element, but I now see that this is not the case.) peter From: Jeremy Carroll <jjc@hpl.hp.com> Subject: Cardinality Restrictions and Punning Date: Thu, 20 Dec 2007 13:56:08 +0000 > Hmmm, this is tricky, harder than I thought. > > Some examples. I'm struggling as to the discussion. > > > Example 1: > Consistent: > [punning on eg:p] > > eg:a rdf:type owl:Thing . > eg:a eg:p eg:a . > eg:p rdf:type owl:ObjectProperty . > eg:p rdf:type owl:DataProperty . > _:r rdf:type owl:DataRestriction . > _:r owl:maxCardinality "0"^^xsd:int . > _:r owl:onProperty eg:p . > eg:a rdf:type _:r . I.e., ObjectPropertyAssertion(eg:p eg:a eg:a) ClassAssertion(eg:a DataMaxCardinality(0 eg:p)) > Example 2: > Inconsistent. > > eg:a rdf:type owl:Thing . > eg:a eg:p eg:a . > eg:p rdf:type owl:ObjectProperty . > eg:p rdf:type owl:DataProperty . > _:r rdf:type owl:ObjectRestriction . > _:r owl:maxCardinality "0"^^xsd:int . > _:r owl:onProperty eg:p . > eg:a rdf:type _:r . I.e., (more or less) ObjectPropertyAssertion(eg:p eg:a eg:a) ClassAssertion(eg:a ObjectMaxCardinality(0 eg:p)) + something like EquivalentDataProperties(eg:p eg:p) > Example 3 - not in OWL 1.1 DL, because mapping rules don't apply. > Who knows whether this is consistent or not, and how we would go about > an OWL Full semantics. I think it should be inconsistent in OWL Full. > > eg:a rdf:type owl:Thing . > eg:a eg:p eg:a . > eg:p rdf:type owl:ObjectProperty . > eg:p rdf:type owl:DataProperty . > _:r rdf:type owl:Restriction . > _:r owl:maxCardinality "0"^^xsd:int . > _:r owl:onProperty eg:p . > eg:a rdf:type _:r . I.e., (more less than more) ObjectPropertyAssertion(eg:p eg:a eg:a) ClassAssertion(eg:a MaxCardinality(0 eg:p)) + something like EquivalentDataProperties(eg:p eg:p) > Example 4 > Inconsistent > > eg:a rdf:type owl:Thing . > eg:a eg:p eg:a . > eg:p rdf:type owl:ObjectProperty . > _:r rdf:type owl:Restriction . > _:r owl:maxCardinality "0"^^xsd:int . > _:r owl:onProperty eg:p . > eg:a rdf:type _:r . I.e., ObjectPropertyAssertion(eg:p eg:a eg:a) ClassAssertion(eg:a MaxCardinality(0 eg:p)) > Example 5 > Consistent > > eg:a rdf:type owl:Thing . > eg:p rdf:type owl:DataProperty . > _:r rdf:type owl:Restriction . > _:r owl:maxCardinality "0"^^xsd:int . > _:r owl:onProperty eg:p . > eg:a rdf:type _:r . I.e., (more or less) ClassAssertion(eg:a DataMaxCardinality(0 eg:p)) > Summary: > > 1 vs 2 the object restriction is inconsistent, data restriction is > consistent, *in the DL semantics*. One triple differs between the two. * [added] * > > 1,2 vs 3 if we don't specify object restriction or data restriction, > using owl:Restriction with punning declarations, then we are outside the > scope of OWL 1.1 DL, but OWL 1.1 Full semantics needs to say something Same as in OWL Full? > 3 vs 4 > 4 is inconsistent in OWL 1.1 DL, becuase the restriction is read as an > ObjectRestriction *again in the DL semantics*. 3 adds more triples, * [added] * > and so must also be inconsistent > in OWL 1.1 Full. > > 3 vs 5 > 5 is 3 without two triples, but is consistent. One possible way forward (which I'm not yet championing): In OWL 1.1 Full, there is no distinction between object and data properties. The class extension of both owl:ObjectProperty and owl:DataProperty is the same as that of rdfs:Property. Note that this does produce observable differences between OWL 1.1 DL and OWL 1.1 Full, but only related to punning object and data properties.
Received on Thursday, 20 December 2007 16:21:19 UTC