W3C home > Mailing lists > Public > public-owl-wg@w3.org > August 2009

Fwd: Problems with OWL 1 tests

From: Ian Horrocks <ian.horrocks@comlab.ox.ac.uk>
Date: Mon, 3 Aug 2009 23:24:50 +0100
Message-Id: <C03B04D9-D10F-456C-ACF5-159A01ADBA77@comlab.ox.ac.uk>
To: W3C OWL Working Group <public-owl-wg@w3.org>
Begin forwarded message:

> From: Sandro Hawke <sandro@w3.org>
> Date: 3 August 2009 21:00:37 BDT
> To: Birte Glimm <birte.glimm@comlab.ox.ac.uk>
> Cc: Ian Horrocks <ian.horrocks@comlab.ox.ac.uk>, "OWL1.1 Chairs"  
> <team-owl-chairs@w3.org>
> Subject: Re: Problems with OWL 1 tests
>
>> <snip>
>>
>>>> 1. WebOnt-miscellaneous-010
>>>> is a negative and NOT positive entailment test
>>>
>>> Just picking on the first one, the current version of Pellet says  
>>> the
>>> entailment does hold:
>>>
>>> $ pellet entail -e http://www.w3.org/2002/03owlt/miscellaneous/ 
>>> conclusion=
>> s010 http://www.w3.org/2002/03owlt/miscellaneous/premises010
>>> All axioms are entailed
>>>
>>> It's possible Pellet is wrong -- maybe it was intentionally  
>>> broken so as
>>> to pass the test case? -- but much more of a case needs to be  
>>> made here,
>>> I think.
>>
>> Pellet is wrong because it does not yet handle blank nodes/anonymous
>> individuals correctly. I submitted a very detailed explanation to
>> Mike&Markus who maintain the test suit. If you want, I can send that
>> explanation to you or to the list.
>
> Ah...  Yes, in general it's best to keep these things on the public
> mailing list, even if it does increase the traffic.  You never really
> know what someone else in the WG is going to need/want to pay  
> attention
> to.
>
>>> Digging a little deeper, it's not a trivial failure on Pellet's  
>>> part. =C2=
>> =A0I
>>> added another triple to the conclussion (in a local copy):
>>>
>>> =C2=A0<rdf:Description rdf:about=3D"http://www.w3.org/People/ 
>>> Sandro/data#=
>> Sandro">
>>> =C2=A0 =C2=A0<rdf:type rdf:resource=3D"&food;Pie"/>
>>> =C2=A0</rdf:Description>
>>>
>>> and Pellet rightly complained:
>>>
>>> =C2=A0 Non-entailments:
>>> =C2=A0 ClassAssertion(Pie Sandro)
>>
>> It really is due anonymous individuals. Pellet works very well for
>> most entailments, but for anonymous individuals you have to implement
>> some kind of rolling-up procedure that eliminates the blank nodes. In
>> order to do that, you have to look at all axioms that refer to the
>> anonymous individual and related individuals. Pellet at the moment  
>> (as
>> far as I am aware) decides entailment axiom by axiom and tests  
>> concept
>> satisfiability of the concept :C if it find ClassAssertion(:C _:a).
>
> Ooooh.   Okay, makes sense (as far as I understand it).
>
>>> What conclusions are supposedly not entailed? =C2=A0The  
>>> conclusions seem =
>> to
>>> be like "there exists something which hasDrink foo and hasFood bar"
>>> which seems plausible enough, but I haven't tried to do the  
>>> reasoning by
>>> hand.
>>
>> I will forward my detailed explanation to the list then and this is
>> quite a lot of work to do by hand, which is why I prefer tests that
>> just test features and not tests that load ontologies with ~800  
>> axioms
>> in it and several entailments. It took me quite a while to figure out
>> what is responsible for the (non)entailment.
>
> I think it's nice to have a few tests that look like real-world tests,
> but in general, as a developer I totally agree.
>
> Thanks for all your work on this.
>
>     -- Sandro
>
>
>> Birte
>>
>>>
>>> =C2=A0 =C2=A0-- Sandro
>>>
>>>> 2. WebOnt-AnnotationProperty-001
>>>> is a positive and NOT a negative entailment test (and actually  
>>>> makes
>>>> only really sense for RDF-Based semantics reasoner, which use a
>>>> different copy of the test as a positive entailment test, this  
>>>> one is
>>>> only for direct semantics)
>>>> Agreed solution (last week) was to reject AnnotationProperty-001  
>>>> and
>>>> make
>>>> AnnotationProperty-002 applicable to both semantics
>>>>
>>>> 3. WebOnt-disjointWith-010
>>>> not OWL 2 DL (invalid use of DisjointClasses), was corrected to OWL
>>>> Full only
>>>>
>>>> 4. WebOnt-Nothing-002 (no status yet, but still stated to be OWL  
>>>> DL)
>>>> not OWL DL
>>>>
>>>> 5. WebOnt-I5.8-011
>>>> was syntactically incorrect (extra > character in the premise)
>>>>
>>>> 6. WebOnt-I5.3-015
>>>> was not OWL 2 DL due to missing typing information, is now only OWL
>>>> Full test
>>>>
>>>> 7. WebOnt-I5.5-004 (no status yet, but still stated to be OWL DL)
>>>> not OWL 2 DL
>>>>
>>>> 8. WebOnt-I5.8-015
>>>> not OWL 2 DL: uses datatype data#type
>>>>
>>>> 9. WebOnt-I5.3-014
>>>> not OWL 2 DL: uses rdf:type in an axiom
>>>>
>>>> 10. WebOnt-I5.1-001 (no status, no species indicator, both  
>>>> semantics)
>>>> not OWL 2 DL: Typing information for 'population', 'stateCode', and
>>>> 'stateBird' is missing.
>>>> A fix would involve an inverse-functional datatype property; hence,
>>>> this test should simply not be a DL test.
>>>>
>>>> 11. WebOnt-I5.8-017 (no status, no species indicator, both  
>>>> semantics)
>>>> not OWL 2 DL: uses datatype #bar
>>>>
>>>> 12. WebOnt-I5.5-007 (now OWL Full, RDF-Based Semantics)
>>>> not OWL 2 DL: test contains an anonymous class
>>>>
>>>> 13. WebOnt-I5.8-013 (now OWL Full, RDF-Based semantics only)
>>>> not OWL 2 DL: uses datatype #bar
>>>>
>>>> 14. WebOnt-I5.8-014 (no status, no species indicator, both  
>>>> semantics,
>>>> description mentions OWL Full only)
>>>> not OWL 2 DL: uses datatype data#type
>>>>
>>>> 15. WebOnt-I5.5-002
>>>> conclusion is in OWL 2 DL: asserts rdf:rest to be functional
>>>>
>>>> 16. WebOnt-I5.8-016 (now OWL Full, only RDF-Based semantics)
>>>> not OWL 2 DL: uses datatype data#type
>>>>
>>>> 17. WebOnt-I5.5-001
>>>> conclusion is in OWL 2 DL: asserts rdf:rest to be functional
>>>>
>>>> 18. WebOnt-description-logic-663
>>>> Invalid conclusion ontology
>>>>
>>>> 19. WebOnt-I5.5-003 (no status, no species indicator, both  
>>>> semantics)
>>>> not OWL 2 DL: the premise ontology talks about rdf:nil
>>>>
>>>> 20. WebOnt-someValuesFrom-001 (no species, no status)
>>>> I am not sure about this one. It seems the conclusion ontology is
>>>> messed up: it seems to want to use a blank node, but the RDF seems
>>>> incorrect to me. The test has an invalid namespace for the  
>>>> semantics.
>>>>
>>>
>>
>>
>>
>> --=20
>> Dr. Birte Glimm, Room 306
>> Computing Laboratory
>> Parks Road
>> Oxford
>> OX1 3QD
>> United Kingdom
>> +44 (0)1865 283529
Received on Monday, 3 August 2009 22:25:27 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 3 August 2009 22:25:28 GMT