Linked Data Visualization Innovation — Image Processing inside Query Processor

Kingsley Uyi Idehen
OpenLink Virtuoso Weblog
3 min readOct 28, 2016

Problem

How can we leverage the strength of RDF-Language sentences as vehicles of powerful structured data representation, while also exploiting the “picture speaks a thousand words” dictum?

Our Solution

One key feature of Virtuoso’s SPARQL Query Processor is the integration of an image processor, enabling query solutions (results) to include an obvious drill-down interface. Here’s a query example:

PREFIX wo: <http://purl.org/ontology/wo/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT DISTINCT ?s as ?href
?name
?kingdom
?image
?habitat
?hname
?description
?adaptation
FROM <urn:bbc:nature:data>
WHERE {
?s wo:kingdom ?kingdom ;
dcterms:description ?description ;
rdfs:label ?name ;
wo:livesIn ?habitat ;
wo:adaptation ?adaptation ;
wo:class ?class ;
wo:growsIn ?growsIn ;
foaf:depiction ?image .
?habitat rdfs:label ?hname .
}

Here’s an illustration of the query results page that applies specific image processing rules to entities identified by the ?image variable:

Click Here for Live Example

Here is a Cross Tabulated view of Entity Relationships that isolates (or filters out) Carnivores that are Desert Dwellers (i.e., desert in the habitat):

Click Here for Live Example

This is the original SPARQL Query, exposed by clicking on the “edit” link of the results document:

Click Here for Live Example Link

There is an HTML5 PivotViewer instance incorporated into our live Linked Data “Junction Box” service, known as URIBurner. Alternatively, you can setup your own system with the following two steps:

  1. Download the HTML5 PivotViewer VAD Package
  2. Install the VAD package.

Once installed, you simply need to understand the use of specific HTML5 Pivot Viewer variable identifiers when building your SPARQL Queries:

  • ?href — HTTP URI that functions as an Entity Identifier (or Name) in the query results, which will be used for navigating within the results page or linking out to its original data source, subject to configuration
  • ?name — Source of Literal Names (Labels)
  • ?image — HTTP URI that identifies images that will be used to produce a digital zoom collection by the image processing part of the query solution production pipeline
  • ?description — Source of Literal Descriptions (Abstracts)

You also have the option to select CXML document output from the SPARQL Endpoint associated with your Virtuoso instance that can be used as HTML5 PivotViewer input. Simply copy the CXML-based results page URI, and and paste it into the input field on the HTML5 PivotViewer’s home page.

Conclusion

This simple demonstration shows how user interaction and interface challenges associated with Linked Data have been addressed via integration of an Image Processing module into Virtuoso’s SPARQL Query Processor.

You can share these drill-down reports with anyone, by using hyperlinks that identify the query results pages. Likewise, you can share query definition pages that allow anyone to tweak and modify queries en route to alternative insights.

Links

--

--

Kingsley Uyi Idehen
OpenLink Virtuoso Weblog

CEO, OpenLink Software —High-Performance Data Centric Technology Providers.