[Pellet-users] Unexplained Pellet Consistency Check
Evren Sirin
evren at clarkparsia.com
Wed Jun 4 11:35:17 UTC 2008
All the results are correct and the third result which was unexpected
for you is simply because of the open world assumption OWL adopts.
Briefly, open world assumption means that we cannot say a statement is
false simply because we don't have enough information about it. When you
don't assign a property value in the third case the reasoner just
assumes that there is an integer value (because the restriction says so)
but we don't know about it. So there is no contradiction in your
ontology and everything is fine. This is in contrast to the closed world
view many other systems like databases adopt where the non-existence of
such a value would be an integrity violation.
If you add more information to your ontology that would cause one to
entail that there are no property values then there would indeed be an
inconsistency. In this case, an example assertion would be to says that
the individual is type of max cardinality restriction with value 0.
Cheers,
Evren
On 6/2/08 2:49 PM, JPQ wrote:
> Hi, folks.
>
> I posted this question in the TopBraid Composer forum but was asked to
> post it here. I'd appreciate your feedback. Thanks.
>
> Consider the following simple case.
>
> 1. An "integer_value" datatype property; no domain/range assigned.
>
> 2. A "HoldOneInteger" class
> <owl:Class rdf:ID="HoldOneInteger">
> <owl:equivalentClass>
> <owl:Restriction>
> <owl:cardinality
> rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
> >1</owl:cardinality>
> <owl:onProperty rdf:resource="#integer_value"/>
> </owl:Restriction>
> </owl:equivalentClass>
> <owl:equivalentClass>
> <owl:Restriction>
> <owl:allValuesFrom
> rdf:resource="http://www.w3.org/2001/XMLSchema#integer"/
> <http://www.w3.org/2001/XMLSchema#integer%22/>>
> <owl:onProperty rdf:resource="#integer_value"/>
> </owl:Restriction>
> </owl:equivalentClass>
> </owl:Class>
>
> 3. A "SingleInteger" individual on the "HoldOneInteger" class
>
> The Resource Form for "SingleInteger" displays and
> unassigned "integer_value" property beneath "Other Properties", as
> expected.
>
> 1. Assign a value to the property. Run Pellet consistency check.
> Passes. Expected.
>
> 2. Assign two values to the property. Run Pellet consistency check.
> Fails. Expected - violates cardinality constraint in property
> restriction on "integer_value".
>
> 3. Do not assign a value to the property. Run Pellet consistency
> check. Passes. Unexpected.
>
> Perhaps someone can clarify what occurs with unassigned values. Why
> doesn't a Pellet consistency check violate the cardinality constraint,
> which states there must be exactly one integer value assigned to the
> "integer_value" property for an individual of type "HoldOneInteger".
> My only assumption is that Pellet interprets an unassigned property
> value as an empty value. In this case the set of allowable values is
> any <xs:integer>, and like any other set the empty set is a valid subset.
>
>
> Anthony
> ------------------------------------------------------------------------
>
> _______________________________________________
> Pellet-users mailing list
> Pellet-users at lists.owldl.com
> http://lists.owldl.com/mailman/listinfo/pellet-users
> _______________________________________________
>
> Sponsored by Clark & Parsia, LLC http://clarkparsia.com/
More information about the Pellet-users
mailing list