- From: <jos.deroo@agfa.com>
- Date: Fri, 15 Dec 2006 00:46:28 +0100
- To: connolly@w3.org
- Cc: public-cwm-talk@w3.org
Dan Connolly wrote: > On Dec 13, 2006, at 8:28 PM, jos.deroo@agfa.com wrote: >> I'm finding an issue with euler n3->yap interpretation >> for the http://www.w3.org/2002/12/cal/calAx.n3 rule >> >> { ?P a :DateProperty. >> ?E ?P ?WHEN. >> # we skip the dtlit step of splitting ?WHEN apart >> (?WHEN "(\\d\\d\\d\\d)-" ) str:search (?YYYY). >> (?YYYY 0) math:sum ?YEARNUM. # sum coerces strings to int >> } => { [ is k:YearFn of ?YEARNUM ] }. >> >> it actually gives a wrong intermediate N3 translation >> >> {?P a p0:DateProperty. ?E ?P ?WHEN. (?WHEN "(\\d\\d\\d\\d)-") >> str:search >> (?YYYY). (?YYYY 0) math:sum ?YEARNUM} => >> {?YEARNUM!k:YearFn }. > > That does look like a different way to say the same thing. Does > ?YEARNUM!k:YearFn not result in a new bnode/skolem constant? Haven't fixed that yet, but one indeed needs Skolem functions and for euler (at this moment) it should be done explicitly in the antecedent of a rule, like e.g. { ?E cal:attendee ?WHO. ?E cal:location ?WHERE. ?WHERE far ?HOME . ?WHO foaf:based_near ?HOME. ?SKF e:tuple (:skf2 ?WHO ?E ?HOME ?WHERE). } => { ?SKF a k:Translation-RoundTrip; k:passengers ?WHO; k:temporallyIntersects ?E; k:origin-RoundTrip ?HOME; k:destination-RoundTrip ?WHERE. }. Besides that I have found more things in euler that could be improved... (now seems like 5 major issues..) When I run bash .cwm http://www.w3.org/2000/10/swap/test/one_trip_per_month.n3 http://www.w3.org/2002/12/cal/calAx.n3 http://www.w3.org/People/Connolly/home-smart.rdf --think --filter=http://localhost/.context+%40prefix+owl%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23%3E.+%7B%3FX+owl%3AdifferentFrom+%3FY%7D+%3D%3E+%7B%3FX+owl%3AdifferentFrom+%3FY%7D. cwm gives "2006-11-12"^^dt:date :differentFrom dwc:_5069_rif4 . "2006-12-14"^^dt:date :differentFrom dwc:_5099_tag200612 . "2007-01-20"^^dt:date :differentFrom dwc:_5320_ts . "2007-04-22"^^dt:date :differentFrom dwc:_5453_hastac . "2007-05-13"^^dt:date :differentFrom dwc:_5055_www2007 . "2007-05-18"^^dt:date :differentFrom trav:XTech . "2007-06-05"^^dt:date :differentFrom dwc:eswc07 . "2007-07-27"^^dt:date :differentFrom dwc:aaai2007 . <#_g0> :differentFrom <#_g0>, <#_g1> . <#_g1> :differentFrom <#_g0>, <#_g1> . and when I run bash .cwm http://www.w3.org/2000/10/swap/test/one_trip_per_month.n3 http://www.w3.org/2002/12/cal/calAx.n3 http://www.w3.org/People/Connolly/home-smart.rdf --think --filter=http://localhost/.context+%40prefix+owl%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23%3E.+%7B%3FX+owl%3AdifferentFrom+%3FX%7D+%3D%3E+%7B%3FX+owl%3AdifferentFrom+%3FX%7D. it doesn't give the contradictions?? (the difference is asking for ?X owl:differentFrom ?X instead of ?X owl:differentFrom ?Y) That is what we also get from euler5 i.e. no derived contradictions (after some local tweaking to work around our issues) ... r:gives { @forSome var:e0. @forSome var:e1. var:e0 owl:differentFrom var:e1. @forSome var:e1. @forSome var:e0. var:e1 owl:differentFrom var:e0. "2007-05-18"^^xsd:date owl:differentFrom :XTech. "2006-12-14"^^xsd:date owl:differentFrom dwc:_5099_tag200612. "2007-01-20"^^xsd:date owl:differentFrom dwc:_5320_ts. "2007-05-13"^^xsd:date owl:differentFrom dwc:_5055_www2007. "2006-11-12"^^xsd:date owl:differentFrom dwc:_5069_rif4. "2007-07-27"^^xsd:date owl:differentFrom dwc:aaai2007. "2007-04-22"^^xsd:date owl:differentFrom dwc:_5453_hastac. "2007-06-05"^^xsd:date owl:differentFrom dwc:eswc07.}]. -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Thursday, 14 December 2006 23:46:53 UTC