RE: Joining results of two independent RDF resources via URL

Here's a brief RDF Gateway[1] script that I think does what you want.
Note that this code assumes both query pages have GET interfaces - not
sure if the first actually does. I could re-write the script for POST
but it's a bit uglier :-) 

========================================================================
==
//setup datasources
var src1 =
"http://nutria.cs.tu-berlin.de/NE/NESearchResult.jsp?query=..."; 

var src2 =
"http://nutria.cs.tu-berlin.de/roodolf/RoodolfSearchResult.jsp?query=rdf
";

var ds1 = new datasource("inet?parsetype=rdf&url=" +
	 server.urlencode(src1));

var ds2 = new datasource("inet?parsetype=rdf&url=" +
	 server.urlencode(src2));

//perform federated query on datasources
var rs = (select ?p ?s ?o using #ds1, #ds2 where {?p ?s ?o});

//coerce recordset object into new datasource
var ds = datasource(rs);

//write out the results as rdf/xml
response.write(ds.format("application/rdf+xml"));

========================================================================

rgds,

Geoff Chappell

[1] http://www.intellidimension.com




> -----Original Message-----
> From: www-rdf-interest-request@w3.org [mailto:www-rdf-interest- 
> request@w3.org] On Behalf Of aloeser
> Sent: Wednesday, June 11, 2003 11:11 AM
> To: www-rdf-interest@w3.org
> Subject: Joining results of two independent RDF resources via URL
> 
> 
> Hi,
> I'd like to join the results of  two independent RDF  data stores.  
> The join is done via the URL, since both sources contain complementary

> (!) informations about the same resources.
> 
> E.g.:
> 
> RDF Store 1, underlaying source: RDF File with RDQL web interface 
> (Jena Toolkit),  see also http://nutria.cs.tu-berlin.de/NE
> 
> <rdf:Description
> rdf:about="http://squid.cis.cs.tu-
> berlin.de/module/dbs/analyse/Output/index.html">
> 
> <neweco:granularitytype 
> rdf:resource="http://nutria.cs.tu-berlin.de/NE/rdfs#module"/>
> <lom-edu:intendedEndUserRole 
> rdf:resource="http://ltsc.ieee.org/2002/09/lom-educational#Learner"/>
> </rdf:Description>
> 
> RDF Store 2, underlaying source Google Search Engine with web 
> interface (Jena Toolkit), see also 
> http://nutria.cs.tu-berlin.de/roodolf
> 
> <RooDolF:ResultElement
> rdf:about="http://squid.cis.cs.tu-
> berlin.de/module/dbs/analyse/Output/index.html">
> 
> <dc:title>Analyse der Anforderungen an Datenbanksysteme</dc:title> 
> <dc:description>Es werden ....</dc:description>  
> </RooDolF:ResultElement>
> 
> Joining 1 and 2  via URL
> 
> rdf: Description
> rdf:about="http://squid.cis.cs.tu-
> berlin.de/module/dbs/analyse/Output/index.html"
> 
> =
> RooDolF:ResultElement
> rdf:about="http://squid.cis.cs.tu-
> berlin.de/module/dbs/analyse/Output/index.html"
> 
> Expected Result:
> 
> <rdf:Description
> rdf:about="http://squid.cis.cs.tu-
> berlin.de/module/dbs/analyse/Output/index.html">
> 
>  <neweco:granularitytype 
> rdf:resource="http://nutria.cs.tu-berlin.de/NE/rdfs#module"/>
> <lom-edu:intendedEndUserRole 
> rdf:resource="http://ltsc.ieee.org/2002/09/lom-educational#Learner"/>
> <dc:title>Analyse der Anforderungen an Datenbanksysteme</dc:title>
>  <dc:description>Es werden ....</dc:description>
> </rdf:Description>
> 
> I'm looking for technologies to define and realize the join easily. 
> I'm interested in a working solution.  What RDF-based tools, 
> languages, views  ... should I use for the implementation?
> 
> -- ___________________________________________________________
> 
>   Alexander Löser
>   Technische Universitaet Berlin Fakultaet IV - CIS
>   bmb+f-Projekt: "New Economy, Neue Medien in der Bildung"
>   hp: http://cis.cs.tu-berlin.de/~aloeser/
>   office: +49- 30-314-25551
>   fax   : +49- 30-314-21601
> ___________________________________________________________

Received on Wednesday, 11 June 2003 11:49:33 UTC