W3C home > Mailing lists > Public > www-rdf-interest@w3.org > May 2000

Re: Embedding RDF in to Oracle

From: Dan Brickley <danbri@w3.org>
Date: Tue, 9 May 2000 20:02:09 -0400 (EDT)
To: Ravi K Maduposu <ravi@littlebaywebworks.com>
cc: www-rdf-interest@w3.org
Message-ID: <Pine.LNX.4.20.0005091917370.26870-100000@tux.w3.org>

Hi Ravi,

On Tue, 9 May 2000, Ravi K Maduposu wrote:

> Can any one tell me how to embedd RDF in to Oracle databace and store the
> entire structure of RDF and also i am looking for a search engine which is
> compatible with RDF format.

I'm not sure if this is quite what you're after, but Sergey Melnik has
gathered together a summary page describing strategies people have adopted
for storing RDF data in RDBMS/SQL systems.

	Storing RDF in a relational database
	http://www-db.stanford.edu/~melnik/rdf/db.html


A few comments in passing on this issue: the basic approach adopted by
many has been to find a rather generic RDBMS schema that can accomdate
arbitrary RDF data structures, and to augment this with indexing/caching
etc heuristics to improve perfomance (eg. create special-case data structures
for commonly encountered properties, eg. Dublin Core attributes).

This problem, of storing unpredictable, heterogeneous Web data in
(relatively static, table-oriented) RDBMS systems isn't peculiar to RDF. I
recently came across this book :

	Data on the Web : From Relations to Semistructured Data and XML
	Serge Abiteboul, Peter Buneman, Jim Gray 
	
I can't find the Web home page for it, but did find a hyperlink to
Amazon's listing:
	http://www.amazon.com/exec/obidos/ASIN/155860622X/dansuciuswebpage/103-5213514-5457469

While the book doesn't focus much on RDF, the authors adopt the view that
_all_ XML data can be interpreted as RDF-like "edge-labelled
graphs". Consequently their discussions about how best to store, query,
process such data structures is rather useful for RDF implementors.
In particular, they discuss strategies for layering a semi-structured XML
graph store (with RDF-like data model) on top of an RDBMS. 

So, that's an approach that connects RDF with the XML "mainstream".

A different angle is to explore RDF's affinity with the logic / Knowledge
Representation tradition. As http://www.w3.org/RDF/ and the archives of
this list show, there have been a number of groups experimenting with the
representation of RDF in logic-oriented systems. For example, there is
work underway with SWI-Prolog, and with XSB to provide support for RDF
processing  in these environments. A classic problem in this tradition has
been to glue logic/inference oriented systems to mainstream, high
performance relational databases like Oracle. There is consequently a
literature and toolset here that pre-dates RDF, but which can be picked up
and used in an RDF context. XSB (http://xsb.sourceforge.net/) and SWI-Prolog
(http://www.swi.psy.uva.nl/projects/SWI/), to pick a couple of packages
I've been looking at, both have modules that can talk to ODBC/SQL database
servers.

see 
SWI: http://www.geocities.com/SiliconValley/Bit/1116/PrologSQL.html
XSB: http://xsb.sourceforge.net/manual2/index.html

I don't mean to suggest here that Prolog is the one true approach
to RDF query etc. (cue Dan Connolly to mention Algernon and closed-world
assumptions ;-)  Rather, these are interesting references to follow up as
they show (a) how RDF can connect to existing work in the KR-meets-SQL
tradition, (b) how tools in the logic/inference tradition might allow
_arbitrary_ existing relationally stored data to be exposed as RDF.

So, I think these various references suggest a possible hybrid approach:

i) strategies needed for storing arbitrary semi-structured Web data (RDF,
XML-interpreted-as-graphs) in traditional RDBMS systems. Experiments by
others in this Interest Group and similar work in XML/databases area can
help here. 

ii) strategies needed for mapping existing RDBMS table structures into
the RDF data model, ie. expressing declaratively the mapping from RDBMS
tables to a Web-oriented model (I've been using XSB to experiment with
this approach).

ii) gluing both of these together: some data will be stored in
RDF-specific systems, other data will live in application-specific SQL
tables. We should be able to present a unified RDF view to the Web
regardless. Getting this combination working well together is one of the
things I think many of us are aiming at...

Dan


--
mailto:danbri@w3.org
Received on Tuesday, 9 May 2000 20:02:15 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:43 GMT