Norm Walsh asked, back on 1Dec... http://lists.w3.org/Archives/Public/www-rdf-interest/2002Dec/0002.html about rules for repeating events, some with end markers and some without. I completely missed that message, as I only catch up with www-rdf-interest occasionally, but meanwhile, in www-rdf-calendar, I wrote some rules that, I think, answer Norm's question. futureEvents.n3: an excercise in processing recurring events Dan Connolly (Thu, Dec 19 2002) http://lists.w3.org/Archives/Public/www-rdf-calendar/2002Dec/0022.html Applying the lessons from futureEvents to Norm's birthday case, we get: this log:forAll :p, :s, :o, :t, :u, :l, :k, :m, :E. { :p a ab:Contact; p:born :o } log:implies { :p :birthEvent [ a db:Appointment ; db:begin-date :o ; db:repeat [ rdf:type db:Repeat ; db:frequency "1"; db:type "Yearly" ] ] } . { :p a ab:Contact; p:born :o; p:died :s; :birthEvent :E } log:implies { :E db:end :s }. There's something unsatisfying about this style of rules... it feels procedural -- I start to think about "creating" a db:Appointment and "modifying" it -- while writing rules is supposed to be declarative. I'm not really modifying anything; this is all monotonic. But feels wierd. -- Dan Connolly, W3C http://www.w3.org/People/Connolly/Received on Friday, 3 January 2003 01:19:25 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:57 GMT