Archive for the ‘rdf’ Category

e c30ac536947f7330943f8de9c33f70ef2d5994e7

Thursday, August 16th, 2007

e is a stack for the data web. Not only is this all in Ruby and uses RDF, but it’s some of the most bare code I’ve seen in a while.

You had me at “data web”.

And +10 for using the file system as a data store instead of a database.

SPARQL Via HTTP Methods

Sunday, March 4th, 2007

Querying the web might get a bit easier, with the union of SPARQL directly with HTTP. TripleSoup, a promising proposal at Apache, aims to expose Triple Stores (RDF databases) directly via HTTP.

This reminds me of URIQA, which is an effort to provide native HTTP methods for accessing metadata about a certain resource. URIQA was interesting because it allows you to say

MGET /foo HTTP/1.1

which means “Retrieve the metadata for resource `/foo`”

It looks like TripleSoup is a bit different, in that the URI in the request methods is some type of application. TripleSoup seems to be a gateway directly into the triple store, whereas URIQA masks the concept of talking to the triple store. In URIQA, it looks like the triple store *is* the server you are connecting to. With TripleSoup, the triple store is located at the URI you are sending requests to.

URIQA’s advantage is that you don’t need to know the URI to the application or triple store, you can just send an MGET to the resource. Of course, URIQA doesn’t handle queries with SPARQL.

My first question with TripleSoup is, how would I discover the URI that I can use for querying? It’s the same problem that URIQA tries to solve, “I know the URI for the resource, but I want to get its metadata.” I can ask that question in SPARQL, but who do I ask?

Best of luck to the TripleSoup team, really looking forward to the code.

No One That I Know

Tuesday, January 9th, 2007

Lee rightly asks Who loves RDF/XML? to which I reply, “No one that I know.”

Is RDF/XML the core of the semantic web? I think it’s easy to argue that the W3C thinks of RDF as the core of the semantic web. The web is made up of documents. Those documents are serializations (representations) or resources. The W3C’s Recommended way of serializing RDF is RDF/XML. Therefore, if RDF is the core of the semantic web and it has to be shuffled around the internets, I think it’s also say to assume that the Recommended way to do that is RDF/XML.

Clarification: RDF the Syntax Will Not Be Successful

Monday, January 8th, 2007

Danny is spot on with his thoughts on Steampunk Semantics in response to my earlier Is Usefulness Inversely Proportional to Specificity? post.

Also, he’s very right I conflated a few issues. To that I owe my 2 month old, who requires my Just In Time attention, and thus has me context switching faster than a single core CPU running a Java application.

I’d like to clarify and say that I feel that RDF the Syntax will fail. It’s not able to embedded into XHTML in a way that anyone knows about or cares about. Microformats have succeeded here, allowing me to *very easily* embed metadata into XHTML.

Can I generate the same graph of metadata with microformat serialization or RDF serialization? I believe I generally can (though some research here should prove this). And this fact that RDF is also a data model might well be its saving grace.

“But what if I’m not publishing XHTML? How do microformats help me publish metadata?” you say? To which I answer: “Use NTriples, Turtle, or even N3“. They are more widely used among humans than RDF/XML is these days, and are a de facto standard and option in the exchange of triples.

“But I love XML! I want RDF/XML!” you cry! To which I reply, Good luck trying to use RDF/XML serialization with your favorite XML tools. XSLT? Forget it. XQuery? Not on your life.

Let’s take what’s good about RDF (the triples, the simple graph model), toss what’s not working (the XML serialization, forcing the use of URIs), and publish how to represent microformats in the RDF data model.

Let RDF ride on microformats. Let microformats play in RDF world.

XML.com: What Is RDF

Friday, July 28th, 2006

XML.com: What Is RDF has been updated for Summer 2006. The last update was back in 2001.

Grand Text Auto » Google’s Norvig Questions Berners-Lee on the Semantic Web

Tuesday, July 18th, 2006

Grand Text Auto » Google’s Norvig Questions Berners-Lee on the Semantic Web closes its post with this excellent quote:


Although Berners-Lee closed by encouraging everyone to contribute data that they had in RDF to the Semantic Web, here I am typing up a blog post instead

DARQ - Federated Queries with SPARQL

Friday, June 30th, 2006

Use DARQ to query the entire web as a single large database. It’s federated SPARQL querying.

RDF and Oracle Presentation to Hawaii Oracle Users Group

Monday, May 8th, 2006

I will be presenting a quick 30 minute talk on RDF and Oracle 10g to the Hawaii Oracle Users Group Tuesday May 9th at 11:30am HST. The meeting’s agenda is now available, including directions to the location. There’s even a drawing for the Effective Oracle by Design book!

I plan to give an overview of RDF and then show how Oracle 10g implements it.

The word on parking is:

> Parking in lot #1 or #2 (enter one block mauka of Dillingham on Kokea Street, is OK. Tell the parking lot attendant they are attending a function in PCATT and put a handwritten note on the dashboard saying that also. Handicap parking should be available on a first-come-first-served basis.

Hope to see you there! Pizza will be served, so come on down.

Identity, Reference, and the Web (IRW2006) Workshop

Wednesday, May 3rd, 2006

Identity, Reference, and the Web (IRW2006) Workshop

> Our immediate goal for this workshop is to explore the nature of identification and reference on the Web, > building on current work in Web architecture, the Semantic Web, and informal community-based tagging > (folksonomy), as well as current practice in XML and theory in philosophy and linguistics.

I’ve been reading the PDFs and papers that will presented at this workshop, and I’m really gaining a greater understanding for the whole httpRange-14 problem. I’ve always known it’s a problem, but I’ve brushed it off hoping that it won’t affect me in Real Life.

However, as RDF is moving more and more into knowledge management arena (and I’m not sure it should go there anyway), the issues of identity are extremely important.

At this moment, I’m subscribing to the “It’s on the web if it has a URI. Who cares if I can’t actually retrieve a representation from the URI?” URI identify Resources, which as we all know are things that can be identified by a URI. A bit cyclic, to be sure. However, it’s broad enough (for me) to mean that anything can be given a URI. Things might be identified with multiple URIs, even.

Now, the larger issue of “How can we know anything about what a URI identifies?” comes into play. This is the reader vs writer issue, as we attempt to reconcile if the author of the URI is the one that can dictate what the URI identifies or if the consumer is able to assign meaning.

I believe that meaning is relative, and that the reader, with their unique experiences and perspectives, will always interpret things in their own way. The readers, or consumers, will always have more power with regards to information interpretation.

This is why I think it’s OK if <http://example.org/x14> identifies a Beach, a Park, a Seashore, and a Playground all at the same time. As long as when two people are communicating about <http://example.org/x14> they are able to agree that they agree that it identifies the same conceptual entity, it should be a short leap to also agree that a beach can be a park can be a seashore can be a playground.

Of course, the granularity of what one party may consider <http://example.org/x14> can be very different than another party. It’s at this point that if Party A wants to be _more specific_ in what it considers is identified by <http://example.org/x14>, it will need to either be OK with Party B’s more general interpretation, or will need to commence some sort of negotiation in order to agree.

For example, take this conversation:

A: “Where are you?”
B: “At kailua beach”

At this point, A should know what Kailua Beach is _in very general terms_. If A just was simply curious at a high level, this conversation is over. However, A might want to meet up with B, so A asks:

A: “Where at the beach are you?”
B: “Oh, to the left of the showers, next to the tree”

Now A should have a very good idea of where, in more exact terms, B is located.

In this example, B’s location is <http://example.org/x14> which can be interpreted many different ways (eg, “at the beach”, “at some lat and long”, “next to a tree”). The consumer of the information must make the determination if they have enough information to make a sound decision. This requires perspective (what other statements in my RDF graph do I have about the URI?) and can’t be provided or assumed by the publisher of the URI.

Hm, so what did I say in this post?

I believe URIs can identify things whether or not they have representations on the web.

I believe that they things URIs identify can be interpreted in many different ways. Using some owl:disjointWith can help to notice when two or more parties are in arguments.

I believe that interpretation is a local operation, performed by the reader or consumer of information.

It’s very possible that conversations between semantic web agents will be required to come to a sort of shared understanding.

Pellet 1.3 Available

Monday, April 17th, 2006

Pellet, an open source OWL reasoner from Mindswap, is now at version 1.3. It is a very capable reasoner, and has excellent integration with Jena.

Below is a list of changes for 1.3:

* ENHANCED: SPARQL query engine PelletQueryExecution tu answer non-SELECT queries

* ADDED: Processing class expressions in SPARQL queries

* ADDED: Treating bnodes in SPARQL queries as non-distinguished variables

* ADDED: Query optimization features (simplification and reordering). Reordering feature is
disabled by default and needs to be enabled in the configuration file.

* ENHANCED: Datatype reasoning support for user-defined datatypes

* ADDED: Support for InverseFunctional datatype properties (a.k.a. keys). (experimental)

* ADDED: Support for DL-safe rules (experimental)

* ENHANCED: Pellet command line options

* ENHANCED: More configuration parameters in pellet.properties