- 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