[Pellet-users] does ‘allValuesFrom' restriction makes sense in an Open (and therefore potentially cruel ;-) World ?
Alejandro Sanchez
ale at iist.unu.edu
Mon Feb 18 11:45:28 UTC 2008
Hi Raphael,
The inference can be obtained after telling the reasoner what he does
not know. In this case, that the only instance related to
individual4_Class2 through the 'requires' property is
individual2_Class11. Then, the reasoner could infer that all values of
the property are from Class11 and classify the individual as Class21.
The OWL code is ...
<Class2 rdf:about="#individual4_Class2">
<rdf:type>
<owl:Restriction>
<owl:onProperty rdf:resource="#requires"/>
<owl:cardinality
rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
</owl:Restriction>
</rdf:type>
<requires rdf:resource="#individual2_Class11"/>
</Class2>
cheers, Ale.
Raphael Coulonvaux wrote:
> Hi,
>
> I would like Pellet (1.5.1) to infer that some individuals belong to a
> class whose definition contains both a 'someValuesFrom' and a
> 'allValuesFrom' restriction (closure axiom pattern) but unfortunately it
> does not.
>
> Remark : the individuals type inference gives the expected result if I
> remove the 'allValuesFrom' restriction from the class definition.
>
> So my question is : with the Open World Assumption, is it possible or
> not to infer that an individual belongs to a class whose definition says
> that it contains individuals that may be related by a specified object
> property to ONLY individuals belonging to another given class ?
>
> I attached a tiny test ontology 'only_test.owl' showing the problem.
>
> Here is the Pellet inference result when the "Class2" definition does
> NOT contain the 'allValuesFrom' restriction (look at the last inference
> result line) :
>
> owl:Thing
> test_only:Class1 - (test_only:individual1_Class1)
> test_only:Class11 - (test_only:individual2_Class11)
> test_only:Class2 - (test_only:individual3_Class2)
> test_only:Class21 - (test_only:individual4_Class2)
>
> Here is the Pellet inference result when the "Class2" definition DOES
> contain the 'allValuesFrom' restriction :
>
> owl:Thing
> test_only:Class1 - (test_only:individual1_Class1)
> test_only:Class11 - (test_only:individual2_Class11)
> test_only:Class2 - (test_only:individual3_Class2,
> test_only:individual4_Class2)
> test_only:Class21
>
> As you may see on the second inference result last line,
> "individual4_Class2" (that is asserted to belong to "Class2") is not
> anymore inferred as belonging to "Class21" while it was in the first
> inference result.
> The "individual4_Class2" is related by the "requires" object property to
> "individual2_Class11" (asserted to belong to "Class11").
> The "individual4_Class2" is NOT related to any other individual and
> therefore we could consider that it is ONLY related by the "requires"
> object property to individual(s) belonging to "Class11", but Pellet does
> not infer so.
> Any idea ?
>
> Raphaël Coulonvaux
More information about the Pellet-users
mailing list