[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: suggestions



> eg.
> SiRPACWritableDataSource janne = new SiRPACWritableDataSource("http://janne.org/about.rdf");
> SiRPACDataSource thirdparty = new SiRPACWritableDataSource("http://ieee.org/cgi-bin/cvserver?janne");
> janne.register(thirdparty); 
> thirdparty.go();
> janne.toRDF();//etc
> 
> this would assert 3rd party statements into the object janne. Calling
> the toRDF() on the janne object would then output aggregated RDF
> incorporating nodes/arcs from the thirdparty server.
> 
> Or variations on this theme. Extending the DataSource class(es) is
> something others could do in their own packages; if you liked any of it
> you might eventually roll it into FatSiRPAC2++ ;-)

The previous example is something we can already do with SiRPAC
but by placing the register and unregister methods in a
DataStore interface we can make other applications that use
database backends or on-the-fly creation of RDF compatible with
ours, too. So, there would not be any changes in the Tellable
interface, only a new DataStore interface which I already added
to SiRPAC. i.e.

public interface DataStore
{
    /**
     * register a Tellable object
     *
     * @param	t	Tellable object
     */
    public void		register (Tellable t);

    /**
     * unregister a Tellable object
     *
     * @param	t	Tellable object
     */
    public void		unregister (Tellable t);
}

and now SiRPAC implements DataStore. But I guess this
still does not fix the problem of reading the same source
multiple times with shift in the time...?

Janne
--
Janne Saarela           | Visiting scientist
Email: jsaarela@w3.org  | World Wide Web Consortium http://www.w3.org/