Re: Dark triples, motivating examples

> ACTION 2002-04-12#7, jjc: post message to rdfcore with motivating example
> (for dark triples?)
>
> The basic problem can be expressed in DAML+OIL as:
>
> <rdf:Description rdf:about="#John">
>    <rdf:type>
>     <daml:class>
>       <daml:intersectionOf rdf:parseType="daml:collection">
>          <daml:class rdf:ID="Student"/>
>          <daml:class rdf:ID="Employee"/>
>      <daml:intersectionOf>
>     </daml:class>
>    </rdf:type>
> </rdf:Description>
>
> entailing
>
> <rdf:Description rdf:about="#John">
>    <rdf:type>
>     <daml:class>
>       <daml:intersectionOf rdf:parseType="daml:collection">
>          <daml:class rdf:ID="Employee"/>
>          <daml:class rdf:ID="Student"/>
>      <daml:intersectionOf>
>     </daml:class>
>    </rdf:type>
> </rdf:Description>
>
> ====

I've found DanC writing this in a nice testcase

  http://www.w3.org/2002/03owlt/intersectionOrderP.n3

entailing

  http://www.w3.org/2002/03owlt/intersectionOrderC.n3

and we've found it doing so (*) and it actually also does
it when we *do* assert all triples of
http://www.w3.org/2002/03owlt/intersectionOrderP.n3
(as tried to explain at the f2f meeting in Amsterdam)

the only motivation for unasserted triples I've found so far was in
http://lists.w3.org/Archives/Public/www-webont-wg/2002Apr/0087.html

--
Jos De Roo

(*) using http://www.agfa.com/w3c/euler/#R30016 we get

@prefix ont: <http://www.daml.org/2001/03/daml+oil#>.
@prefix ns: <http://www.agfa.com/w3c/euler/owl-rules#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
@prefix : <http://www.w3.org/2002/03owlt/intersectionOrder#>.
@prefix log: <http://www.w3.org/2000/10/swap/log#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix io: <http://www.w3.org/2002/03owlt/intersectionOrder#>.
@prefix owl: <http://www.w3.org/2001/10/daml+oil#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.

 {
    <http://www.agfa.com/w3c/euler/owl-rules#rule9d> .
   {
    <http://www.agfa.com/w3c/euler/owl-rules#rule9f> .
    :John a [ owl:intersectionOf ( :Student :Employee)].
     {
    <http://www.agfa.com/w3c/euler/owl-rules#rule10b> .
       {
    <http://www.agfa.com/w3c/euler/owl-rules#rule10a> } log:implies
      {( :Employee) owl:item :Employee}} log:implies
    {( :Student :Employee) owl:item :Employee}} log:implies
  {:John a :Employee}.
   {
    <http://www.agfa.com/w3c/euler/owl-rules#rule9c> .
     {
    <http://www.agfa.com/w3c/euler/owl-rules#rule9f> .
      :John a [ owl:intersectionOf ( :Student :Employee)].
       {
    <http://www.agfa.com/w3c/euler/owl-rules#rule10a> } log:implies
      {( :Student :Employee) owl:item :Student}} log:implies
    {:John a :Student}} log:implies
  {:John a [ owl:intersectionOf ( :Student)]}} log:implies
{:John a [ ont:intersectionOf ( :Employee :Student)]}.


PS DanC, it's indeed a lot easier to do with a backward reasoner
-- http://ilrt.org/discovery/chatlogs/rdfig/2002-04-15.html#T16-59-26

Received on Tuesday, 16 April 2002 05:32:55 UTC