- From: Jeremy Wong <50263336@student.cityu.edu.hk>
- Date: Wed, 06 Apr 2005 10:24:35 +0800
- To: jos.deroo@agfa.com
- Cc: Chris Purcell <cjp39@cam.ac.uk>, semantic-web@w3.org
- Message-id: <002101c53a4f$c6e8cc60$6502a8c0@miko947ymju833>
The rules look cool. Is it called.. backward-chaining? The drawback I can see is that it generates some more facts which can be as many as n*(n-1)/2. Sticking back to the original 5 facts.. then they should entail 3 owl:oneOf restrictions.. <#A> rdf:type <#X> , <#Y> , <#Z> . <#B> rdf:type <#Y> . <#C> rdf:type <#Z> . # entail <#X> owl:oneOf ( <#A> ) . <#Y> owl:oneOf ( <#A> <#B> ) . <#Z> owl:oneOf ( <#A> <#C> ) . Here comes the problem of collection generation and attaching the owl:oneOf vocabulary to the head of the list. Can rules generate a collection? (Thinking...) By the way, what is the "filter" for? Jeremy ----- Original Message ----- From: <jos.deroo@agfa.com> To: <jos.deroo@agfa.com> Cc: "Jeremy Wong 黃泓量" <50263336@student.cityu..edu.hk>; "Chris Purcell" <cjp39@cam.ac.uk>; <semantic-web@w3.org> Sent: Wednesday, April 06, 2005 6:55 AM Subject: Re: Rule-based approach to conclude owl:intersectionOf > did some slight changes and also tested with cwm > > ### given > > @prefix owl: <http://www.w3.org/2002/07/owl#>. > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. > @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. > @prefix : <http://example.org/eg#>. > > :X owl:oneOf ( :A ). > :Y owl:oneOf ( :A :B ). > :Z owl:oneOf ( :A :C ). > > > {?B has owl:oneOf ?Y. > ?A has owl:oneOf ?X. > ?Y :includes ?X} > => > {?A rdfs:subClassOf ?B}. > > > {?X a rdf:List} > => > {?X :includes rdf:nil}. > > {?S rdf:first ?A; > a rdf:List. > ?X :item ?A. > ?S rdf:rest ?B; > a rdf:List. > ?X :includes ?B} > => > {?X :includes ?S}. > > > {?L rdf:first ?I; > a rdf:List} > => > {?L :item ?I}. > > {?L rdf:rest ?R; > a rdf:List. > ?R :item ?I} > => > {?L :item ?I}. > > > {?S owl:oneOf ?X} > => > {?X a rdf:List}. > > {?L rdf:rest ?X; > a rdf:List} > => > {?X a rdf:List}. > > > ### filter > > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. > @prefix : <http://example.org/eg#>. > > {:X rdfs:subClassOf :Y, :Z} => {:X rdfs:subClassOf :Y, :Z}. > > > ### gives > > @prefix : <http://example.org/eg#> . > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . > > :X rdfs:subClassOf :Y, > :Z . > > > -- > Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/ > > > > > Jos De_Roo > 05/04/2005 22:06 > > > To: Jeremy Wong 黃泓量 <50263336@student.cityu.edu.hk>@AGFASMTP > cc: Chris Purcell <cjp39@cam.ac.uk>, semantic-web@w3.org > Subject: Re: Rule-based approach to conclude owl:intersectionOf > >> Oh my God.. i'd not make mistake again if it's in set.. > > :) > >> CEXT(S(#X)) = {<#A>} >> CEXT(S(#Y)) = {<#A>,<#B>} >> CEXT(S(#Z)) = {<#A>,<#C>} >> i.e. >> <#A> rdf:type <#X> , <#Y> , <#Z> . >> <#B> rdf:type <#Y> . >> <#C> rdf:type <#Z> . >> => >> <#X> rdfs:subClassOf <#Y> , <#Z> . >> => >> <#X> owl:intersectionOf (<#Y>,<#Z>) . >> >> I admit that this kind of inference requires a condition that the > collection >> of facts is complete. Otherwise the inference results may be ruined if a > >> fact like <#B> rdf:type <#X> is asserted. However, it is not a too bad >> interpretation because the OWL interpretation still satisifies the RDF > graph >> above. > > One could say > :X owl:oneOf ( :A ). > :Y owl:oneOf ( :A :B ). > :Z owl:oneOf ( :A :C ). > > and then > :X rdfs:subClassOf :Y, :Z. > > easily follows, using such rules as > > { ?B has owl:oneOf ?Y. > ?A has owl:oneOf ?X. > ?Y :includes ?X } > => > { ?A rdfs:subClassOf ?B }. > > > { } > => > { ?X :includes rdf:nil }. > > { ?S rdf:first ?A. > ?X :item ?E. > ?E has owl:equivalentClass ?A. > ?S rdf:rest ?B. > ?X :includes ?B } > => > { ?X :includes ?S }. > > > { ?S rdf:first ?X } > => > { ?S :item ?X }. > > { ?S rdf:rest ?B. > ?B :item ?X } > => > { ?S :item ?X }. > > > At this moment, I can't find proof for > :X owl:intersectionOf ( :Y :Z ). > > i.e. probably have to add some more owl-rules.. > > >> In addition, my main concern is the use of the universal quantification > and >> the existential quantification. It is because N3 Rules cannot express > the >> inference described in the above example. My work of rules shows that N3 > >> Rules is very weak to model OWL restrictions, anyway. I hope to discuss > or >> to find out the use of the quantification facilities so that the > rule-based >> approach becomes more powerful as expected. > > You can have look at > http://www.w3.org/2000/10/swap/doc/Rules > and convince yourself that it can be easily done :) > >> :) >> Jeremy > > -- > Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/ > > > >
Received on Wednesday, 6 April 2005 02:31:40 UTC