- From: Sandro Hawke <sandro@w3.org>
- Date: Thu, 30 Apr 2009 18:16:05 -0400
- To: Dave Reynolds <der@hplb.hpl.hp.com>
- cc: Jos de Bruijn <debruijn@inf.unibz.it>, RIF <public-rif-wg@w3.org>
> > The argument against the one-to-one mapping is that it's harder to > > implement. I believe you cannot implement it in a rule system that does > > not support function symbols, unless you have specific machinery for > > manipulating the RDF list structures while you manipulate the RIF > > structures: the construction of an RIF list implies the existence of a > > bunch of objects used for the structure of the RDF list. > > I think any system likely to implement this would have such specific > machinery anyway. > > However, the "as extensions" option is still useful and a lower > implementation barrier so perhaps that would be the better choice. It > doesn't stop people doing future extensions which strengthen the link. > > I won't be there on Tuesday (though I may be able make the first 25m of > the call if that would be useful). At the moment my preference would be > "as extensions" as top choice (on grounds of lower implementation cost) > but "1-to-1" also acceptable. How big is the implementation cost? Jos said he thought Jena had this. My sense is it's pretty easy, but I don't have enough of an implementation working to really test it out. Hmmm. I'm wondering how far you'd get by just adding rules like this: forall ?L ?x if is-list(?L) and count(?L) > 0 then ?L[rdf:first->get(?L, 0) and ?L[rdf:rest->sublist(?L, 1) forall ?L ?x if is-list(?L) and count(?L) = 0 then ?L = rdf:nil but I guess they aren't safe, and "?L = rdf:nil" isn't in Core or PRD, and they're ... rather wasteful. The main reason I want one-to-one is for people doing SPARQL queries on the frames in a RIF rule base. But I guess that SPARQL interface could do this conversion without it really being a mandatory part of RIF (just like it would do the conversion from rdf:text to RDF's plain literals). -- Sandro
Received on Thursday, 30 April 2009 22:16:15 UTC