Christopher St John wrote:
On Thu, Feb 26, 2009 at 10:59 AM, Kingsley Idehen
<[email protected]> wrote:
My worry as a mashup author is that the web of linked data
has holes in places I didn't expect, and navigating across the
gaps requires traditional integration code.
No DBMS is perfect for cognition gifted humans. The Linked Data Web is no
exception. Their are two many dimensions to human context :-)


Fair enough, but location is a very important dimension. At
least to me :-) The fact that all the major relational databases
have positional SQL queries is a sign that it's an important
dimension to other people, as well...
Not disputing that, simply saying: you can construct your dimensions by reshaping the data. But I sense that the problem you have is the inability to calculate proximity "on the fly" via SPARQL, for instance?

You are really seeking a URI that expose a Thing with geospatial object
association, right? Thus, when you put the URI in a browser you get a map of
those things etc..


Hmmm. I have a lat/long position (given to me by the phone),
and I want the top 3 closest US National Register sites ranked by
proximity. And I want to get those sites using linked data as
"purely" as possible, obeying all relevant best practices.

I have the National Register dataset locally. Part of the exercise
was to publish it as linked data. I was tentatively planning to use
geonames URLs for locations. (The National Register dataset is
also available as part of other datasets, but the idea was to
actually go through the exercise)

So, if I have lat/long, and a National Register dataset that links
to the geonames dataset that has lat/long data, then all the data
I need is available as linked data.

But... I have no (generic) way to state my query.
If you want to do it "on the fly" in SPARQL, then there is a problem which comes down to GeopSpatial functions in the Quad Store. On the other hand if you are happy to get the proximity calcs via a Web Service (which I believe DBpedia Mobile does) then Wrapper/Proxy URIs based on the service would do.
As far as I can tell, my options are:

 A) Write integration code to hook the datasets (geonames has
 a couple queries I could use), with the option of wrapping the
 bridge so it could be queried via a SPARQL extension.
Yes, we call this an RDFizer Cartridge or Wrapper.
 B) Import the geonames data locally, and either use postgreSQL
 geodata extensions directly, or wrap them so I could query
 locally via a SPARQL extension.


Are the following ample examples:

1. Display a map of places associated with battles linked to "Naploleon"
2. Geospatial browsing along the lines of: http://linkedgeodata.org/browser/


Number 1 would probably be closest.

It looks like the linkedgeodata browser takes option (B) above,
but of course at that point you're limited to datasets that you've
pre-imported or pre-coded an integration for, and you've lost the
ability to _generically_ link in new data.

Which is fine. The whole idea was to learn by writing an actual
application, and problems encountered along the way are just
grist for the blog mill.
Good idea, stick with the plan.

Some todos for us re. Virtuoso:

1. Make a Geonames Cartridge (once and for all)
2. Add GeoSpatial Indexing to the Virtuoso Core (been on todo for eons, and implementation cost isn't high).

Let's keep talking. I'll ping you when the Geonames Cartridge is ready; proximity calcs will be delivered via Cartridge options.

Kingsley
Thanks for the feedback!

-cks



--


Regards,

Kingsley Idehen       Weblog: http://www.openlinksw.com/blog/~kidehen
President & CEO OpenLink Software Web: http://www.openlinksw.com





Reply via email to