- You encounter DBpedia or the LOD Cloud Pictorial.
- You look around (typically following your nose from link to link).
- You attempt to publish your own stuff.
- You get stuck.
The problems typically take the form of:
- Confusion over the complementary Name and Address functionality abstracted by a single URI.
- Confusion over the terminology in use, due to conflation and over-loading of terms such as Resource, URL, Representation, Document, etc.
- Inability to find robust tools with which to generate Linked Data from existing data sources such as relational databases, CSV files, XML, Web Services, etc.
To start addressing these problems, here is a simple guide for generating and publishing Linked Data using Virtuoso.
Existing RDF data can be added to the Virtuoso RDF Quad Store via a variety of built-in data loader utilities (see How To Load RDF Data Into Virtuoso (various methods), Virtuoso Bulk Loader Script for RDF).
Many options allow you to easily and quickly generate RDF data from other data sources:
- Install the Sponger Bookmarklet for the URIBurner service. Bind this to your own SPARQL-compliant backend RDF database (in this scenario, your local Virtuoso instance), and then fetch some HTTP-accessible Network resources.
- Convert relational DBMS data to RDF using the Virtuoso Linked Data Views Wizard (see Wizard based generation of RDF based Linked Data from ODBC accessible Relational Databases).
- Starting with CSV files, you can
- Place them at an HTTP-accessible location, and use the Virtuoso Sponger to convert them to RDF or;
- Use the CVS import feature to import their content into Virtuoso's relational data engine; then use the built-in Linked Data Views Wizard as with other RDBMS data (see Bulk Loader Script for CSV).
- Starting from XML files, you can
- Use Virtuoso's inbuilt XSLT-Processor for manual XML to RDF/XML transformation or;
- Leverage the Sponger Cartridge for GRDDL, if there is a transformation service associated with your XML data source, or;
- Let the Sponger analyze the XML data source and make a best-effort transformation to RDF.
Install the Faceted Browser VAD package (
fct_dav.vad) which delivers:
- Faceted Browser Engine UI
- Dynamic Hypermedia Resource Generator
- provides descriptor resources for every entity (data object) in the Native or Virtual Quad Stores
- supports a broad array of output formats, including
You, your enterprise, and your customers can easily consume and exploit your newly deployed Linked Data, again with a few simple steps --
- Load a page like this in your browser:
<cname>[:<port>]gets replaced by the host and port of your Virtuoso instance
<entity-uri>gets replaced by the URI you want to see described -- for instance, the URI of one of the resources you let the Sponger handle.
- Follow the links presented in the descriptor page.
- If you ever see a blank page with a hyperlink subject name in the About: headline at the top of the page, simply add the parameter "
&sp=1" to the URL in the browser's Address box, and hit
[ENTER]. This will result in the following "on the fly" sequence --
- retrieval of the resource
- transformation of the retrieved resource to RDF
- generation of a descriptor page describing the resource
- Use the navigator controls to page up and down the data associated with the "in scope" resource descriptor.
- Virtuoso Tips and Tricks Collection
- Alternatives for reification for Linked Data publishing usage
- Sample Descriptor Page (what you see after completing the steps in this post)
- What is Linked Data, really?
- Painless Linked Data Generation via URIBurner
- How To Load RDF Data Into Virtuoso (various methods)
- Virtuoso Bulk Loader Script for RDF
- Bulk Loader Script for CSV
- Wizard based generation of RDF based Linked Data from ODBC accessible Relational Databases