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

Re: Parsing DBPedia result

From: Tom Morris <tom@tommorris.org>
Date: Wed, 24 Aug 2011 13:52:47 +0100
Message-ID: <CAAQB2S8Ezr95yvp3aCZfOAyR31kbA=vTK0cNvrFeujN87kuhkQ@mail.gmail.com>
To: Arne De Herdt <arne.de.herdt@tenforce.com>
Cc: public-rdf-ruby@w3.org
[On Mon, Aug 22, 2011 at 14:37, Arne De Herdt
<arne.de.herdt@tenforce.com> wrote:
> Iíve just been thrown into a project that requires me to parse information from DBPedia based upon certain keywords. The example in the demo is the name of the city, which should return me the English description of that city for the demo.
> Iíve scrambled my own SPARQL query together for the endpoint at DBPedia. Iím by no means experienced in semantics, as I just got plunged into this world. My query looks like this:
> The info returned is what I want to work with.

Hi Arne,

You are doing a SELECT query which returns back XML in the SPARQL
Query Results XML Format [1] rather than RDF. Unlike RDF, this can be
easily parsed using standard XML tools. In Ruby, the best tool for
this is Nokogiri [2], which basically gives you a DOM-style object
graph for navigating the returned XML.

Basically, the SPARQL XML results format is essentially a big table,
and isn't RDF data: it's just a list of all the results, much as you
might get from a SQL query.

Just run the query as an HTTP call (using something like Curb or even
open-uri), parse it into Nokogiri, then extract from the XML document
the data you need.

[1] http://www.w3.org/TR/rdf-sparql-XMLres/
[2] http://nokogiri.org/

Tom Morris
Received on Wednesday, 24 August 2011 12:53:42 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:02:15 UTC