- From: <jos.deroo@agfa.com>
- Date: Mon, 19 Sep 2005 00:45:20 +0200
- To: jos.deroo@agfa.com
- Cc: public-cwm-talk@w3.org
is also fine for cwm http://www.agfa.com/w3c/euler/medP.n3 -think -filter=http://www.agfa.com/w3c/euler/medF.n3 and is returning :Ann :isPrescribed :aspirin . i.e. with given ### medP.n3 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix m: <http://www.agfa.com/w3c/euler/medP#>. @prefix X: <http://www.agfa.com/w3c/euler/medP#>. m:Ann a m:Patient. m:Ann m:complication m:gastroEntritis. {m:Ann m:complication m:gastricUlcer} => {}. {m:Ann m:complication m:postSurgery} => {}. m:aspirin m:prescribedFor m:gastroEntritis. m:aspirin m:excludedFor (m:gastricUlcer m:postSurgery). @forAll X:P, X:D, X:M, X:L. {X:P m:complication X:D. X:M m:prescribedFor X:D. X:M m:excludedFor X:L. X:P m:fineWith X:L} => {X:P m:isPrescribed X:M}. @forAll X:P. {X:P a m:Patient} => {X:P m:fineWith rdf:nil}. @forAll X:L, X:P, X:A, X:B. {X:L rdf:first X:A; a rdf:List. {X:P m:complication X:A} => {}. X:L rdf:rest X:B. X:P m:fineWith X:B} => {X:P m:fineWith X:L}. @forAll X:M, X:L. {X:M m:excludedFor X:L} => {X:L a rdf:List}. @forAll X:L, X:R. {X:L rdf:rest X:R; a rdf:List} => {X:R a rdf:List}. and filter ### medF.n3 @prefix m: <http://www.agfa.com/w3c/euler/medP#>. @prefix X: <http://www.agfa.com/w3c/euler/medF#>. @forAll X:P, X:M. {X:P m:isPrescribed X:M} => {X:P m:isPrescribed X:M}. -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/ Jos De_Roo/AMDUS/MOR/Agfa-NV/BE/BAYER@AGFA Sent by: public-cwm-talk-request@w3.org 18/08/2005 23:08 To: Jos De_Roo/AMDUS/MOR/Agfa-NV/BE/BAYER@AGFA cc: public-cwm-talk@w3.org Subject: Re: use of constraints dunno what I did wrong in test sequnce, but now cwm is happy with the => direction as well when using @forAll :X. -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/ Jos De_Roo/AMDUS/MOR/Agfa-NV/BE/BAYER@AGFA Sent by: public-cwm-talk-request@w3.org 18/08/2005 22:49 To: public-cwm-talk@w3.org cc: (bcc: Jos De_Roo/AMDUS/MOR/Agfa-NV/BE/BAYER) Subject: use of constraints assume one calls {set-of-triples} => {}. a constraint. I found constraints quite useful to write rules to detect inconsistencies e.g. {?Y owl:disjointWith ?Z. ?X a ?Y, ?Z} => {}. and to use single triple constraints as rule premise e.g. {?X :cp :hipInjury. {?X :fracture :femur} => {}} => {?X :contusion :hip}. so that given :Ann :cp :hipInjury. {:Ann :fracture :femur} => {}. one could derive :Ann :contusion :hip. and if it would somehow be the case that :Ann :fracture :femur. then one can clearly detect that inconsistency. cwm doesn't seem to be happy with that.. ah-ha! cwm seems to be happy when given @forAll :X. {:X :cp :hipInjury. {} <= {:X :fracture :femur}} => {:X :contusion :hip}. :Ann :cp :hipInjury. {} <= {:Ann :fracture :femur}. to answer :Ann :contusion :hip . for query [] q:select {?P :contusion ?G}; q:where {?P :contusion ?G}. and I'm wondering about that.. -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Sunday, 18 September 2005 22:45:33 UTC