W3C home > Mailing lists > Public > public-rif-wg@w3.org > April 2009

Re: [RDF+OWL] Way of connecting RDF and RIF lists

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>
Message-ID: <3412.1241129765@ubehebe>

> > 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

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:07:55 UTC