W3C home > Mailing lists > Public > public-rdf-ruby@w3.org > February 2011

Re: Question about doing RDF analysis in Ruby

From: Gregg Kellogg <gregg@kellogg-assoc.com>
Date: Tue, 1 Feb 2011 11:01:28 -0500
To: Greg Lappen <greg@lapcominc.com>
CC: Ben Lavender <blavender@gmail.com>, "public-rdf-ruby@w3.org" <public-rdf-ruby@w3.org>
Message-ID: <F25D1D97-347E-4060-A5D2-F581F8AA3E25@kellogg-assoc.com>
These are fairly generic questions, and you might want to re-post it to SemanticOverflow, for example.

On Jan 31, 2011, at 8:15 PM, Greg Lappen wrote:

> I thought of a couple more questions while I was out and about:
> 
> 1)  It's fairly common to design applications with an RDBMS (and now document-based and key-value) data stores, and then serving that data in various formats (html, xml, json, csv, etc.).  Obviously RDF could just be another of these formats.  Or you could use RDF as your primary data model (and data store).  Are there some guidelines or "rules of thumb" that are out there to help decide which path to take?

>From my perspective, RDF offers several advanatages over traditional DBMS systems:

* Data is normalized to triples (or quads),
* DB can provide specific support for RDF queries,
* No "impedance mis-match" in going between representations.

> 
> 2)  Everywhere I read about the semantic web and RDF, it talks about how you can combine different data sets and derive new data (inferences) - has anyone had experience with building systems that can answer questions that users come up with at runtime (using SPARQL queries?), or is this mostly done by writing programs?  

There are a number of different open-source inference engines. Notation-3 has reasoning built in (not yet in the Ruby implementation). See, for example CWM [1]. SPARQL, too, can be used for limited reasoning, as it is not naturally chaining. Reasoning ultimately becomes an exercise in Artificial Intelligence, with inference logic such as that expressed in OWL/RDFS, forming the basis of higher-level operations. See [2] for some more information.

The Semantic Web Application Platform  (SWAP) suite [3] has a number of uses of performing inference using CWM in Notation-3. See, for example, [4].

> Just looking for some general info as there's a lot of academic articles out there, and a lot of books, and I want to know what I should be trying to learn.
> 
> Thanks!
> 
> Greg

Gregg

[1] http://www.w3.org/2000/10/swap/doc/cwm.html
[2] http://en.wikipedia.org/wiki/Semantic_reasoner
[3] http://www.w3.org/2000/10/swap/
[4] http://www.w3.org/2000/10/swap/grammar/first_follow.n3
Received on Tuesday, 1 February 2011 16:02:44 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 1 February 2011 16:02:45 GMT