content
| - ---++Automated Generation of RDF Views over Relational Data Sources
%TOC%
---+++What
An HTML-based Wizard interface for dynamically generating & publishing RDF-based Linked Data from ODBC- or JDBC-accessible relational data sources. Basically, a mechanism for building RDF-based Linked Data views over relational data sources.
---+++Why
The proliferation of relational databases across enterprises and behind Web sites makes them a vital data source for the burgeoning Linked Data Web. The process of publishing Linked Data from these sources needs to be as unobtrusive as possible. Naturally, a balance has to be struck between unobtrusive generation of Linked Data and traditional relational database management system (RDBMS) virtues such as:
* Scalability
* Security
* Analytical Expressiveness of SQL
* Separation of Data Access and Data Storage via ODBC, JDBC, ADO.NET, and other call level interfaces (CLIs).
---+++How
The following steps must be taken to publish RDF-based Linked Data:
1 Identify ODBC or JDBC data sources that host the data you seek to publish (if the data isn't Virtuoso RDBMS-hosted -- in which case, skip ahead to step #3).
1 Attach/Link TABLEs or VIEWs from the external data sources into Virtuoso via their Data Source Names (DSNs).
1 Identify the internal or external TABLEs or VIEWs that hold the data you wish to publish.
1 Use the Linked Data publishing Wizard to produce a Data Source Ontology and associated Instance Data.
1 Configure Endpoints and Re-write Rules to disambiguate data object (resource) identity and description through HTTP-based content negotiation.
1 Expose the Data Source Ontology and associated Instance Data in Linked Data form through those Endpoints and Re-write Rules.
These steps may be largely automated (the "One-Click" Deployment below), or performed manually ("Using the Conductor's HTML-based Wizard" further down).
---++++One-Click Linked Data Generation & Deployment
The following steps provide a one-click guide for publishing ODBC- or JDBC-accessible RDBMS data in RDF Linked Data form, using the "Generate & Publish" Conductor feature.
1 Go to <code>http://<cname>:port/conductor</code>
1 Log in as user <b><code>dba</code></b> (or another user with DBA privileges)
1 Follow menu path <b>Database</b> -> <b>RDF Views</b>
%BR%%BR%<img src="%ATTACHURLPATH%/rd1.png" style="wikiautogen" />%BR%%BR%
1 In the form presented, perform the following steps:
%BR%%BR%<img src="%ATTACHURLPATH%/rd2.png" style="wikiautogen" />%BR%%BR%
1 Select the <b>Database Name Qualifier</b> (e.g., "<code>Demo</code>") that exposes the Tables / Views for this exercise
1 Enter the <b>Base URL</b> to which your URL rewrite rules will be bound (e.g., <code>http://<cname>:8890/Demo</code>)
1 Select the specific Tables containing the data to be published (e.g., <b>Demo.demo.Shippers</b> and <b>Demo.demo.Suppliers</b>)
1 Click the <b>Generate & Publish</b> button
1 Virtuoso will perform the entire process of ontology generation, instance data generation, and linked data deployment (re-write rules generation and application).
1 Error messages will be presented if the Wizard encounters problems. If there are no error messages, your RDF view declarations and Linked Data publishing activities will have completed successfully.
%BR%%BR%<img src="%ATTACHURLPATH%/rd13.png" style="wikiautogen" />%BR%%BR%
1 Optionally, you can also perform one of the following tasks:
* <b>Save Data Mappings</b> when clicked, offers to save the generated Definitions to local file system
* <b>Save Ontology Mappings</b> when clicked, offers to save the generated Ontology to local file system
* <b>Click on the "Cancel" button</b> to return to the initial RDF View Generation form.
---++++Manual Linked Data Generation & Deployment using the Conductor's HTML-based wizard
The following step-by guide will lead you through manually publishing ODBC- or JDBC-accessible RDBMS data in RDF Linked Data form, using the Conductor's HTML-based wizard:
1 Go to <code>http://<cname>:port/conductor</code>
1 Log in as user <b><code>dba</code></b> (or another user with DBA privileges)
1 Follow menu path <b>Database</b> -> <b>RDF Views</b>
%BR%%BR%<img src="%ATTACHURLPATH%/rd1.png" style="wikiautogen" />%BR%%BR%
1 In the form presented, perform the following steps:
%BR%%BR%<img src="%ATTACHURLPATH%/rd2.png" style="wikiautogen" />%BR%%BR%
1 Select the <b>Database Name Qualifier</b> (e.g., "<code>Demo</code>") that exposes the Tables / Views for this exercise
1 Enter the <b>Base URL</b> to which your URL rewrite rules will be bound (e.g., <code>http://<cname>:8890/Demo</code>)
1 Select the specific Tables containing the data to be published (e.g., <b>Demo.demo.Shippers</b> and <b>Demo.demo.Suppliers</b>)
1 Click the <b>Generate via Wizard</b> button
1 At this point, you are presented with the option to edit your column selection. Select the "Edit" link, for example, for table <code>Demo.demo.Shippers</code>.
%BR%%BR%<img src="%ATTACHURLPATH%/rd3.png" style="wikiautogen" />%BR%%BR%
1 For images or other binary data in MIME formats to be revealed as anything other than generic "binary objects", you must map large <code>varbinary</code> types
to the appropriate MIME types like <code>image/gif</code>. To do so, select the <b>Edit</b> link for <b>Binding/MIME Type</b> of the relevant table columns. You can:
* Leave the <b>Binding/MIME Type</b> literal; or
* Set to skip, such that the column will not be used in RDF generation; or
* Select the <b>binary object</b> value in order for the column to be referenced as binary.
%BR%%BR%<img src="%ATTACHURLPATH%/rd14.png" style="wikiautogen" />%BR%%BR%
1 After finishing with your changes click the <b>Save</b> button, or cancel the changes and go back by clicking the <b>Cancel</b> button.
1 At this point, the <b>RDF View Definition</b> form will let you <b>Select Generation Targets</b> options:
%BR%%BR%<img src="%ATTACHURLPATH%/rd15.png" style="wikiautogen" />%BR%%BR%
* Data Source Ontology Mappings
* Instance Data View Mappings
* VoiD statistic
1 Make sure you click the "Next" button.
1 Based on your selections in the prior form, the <b>RDF View Definition</b> <b>Deployment Options</b> form will be offered:
* Data Source Ontology Rules
* Instance Data Rules
%BR%%BR%<img src="%ATTACHURLPATH%/rd4.png" style="wikiautogen" />%BR%%BR%
1 Select the desired option(s) and click the "Next" button which unveils a generated Instance Data and/or Ontology form.
%BR%%BR%<img src="%ATTACHURLPATH%/rd5.png" style="wikiautogen" />%BR%%BR%
1 Click the <b>Execute</b> button and Virtuoso will:
1 Apply the generated declarations (instance data and ontology) to your Virtuoso instance
1 Publish / Deploy declarations that expose the Wizard-generated Rewrite Rules and associated endpoints.
%BR%%BR%<img src="%ATTACHURLPATH%/rd6.png" style="wikiautogen" />%BR%%BR%
1 Optionally, you can also perform one of the following tasks:
1 <b>Save Data Mappings</b>: when clicked, offers to save the generated Definitions to local file system
1 <b>Save Ontology Mappings</b>: when clicked, offers to save the generated Ontology to local file system
1 <b>Export as WebDAV resource</b>: exports the selected objects/items as a WebDAV resource:
1 Click <b>Browse</b>
1 Enter a WebDAV resource and click the <b>Select</b> button.
%BR%%BR%<img src="%ATTACHURLPATH%/rd7.png" style="wikiautogen" />%BR%%BR%
Note, the WebDAV resource path value will be shown in the WebDAV location field.
1 Then click the "Save Data Mappings" or "Save Ontology Mappings" button, to complete the option task of saving your generated (or edited) view declarations.
%BR%%BR%<img src="%ATTACHURLPATH%/rd8.png" style="wikiautogen" />%BR%%BR%
1 Error messages will be presented if the Wizard encounters problems. If there are no error messages, your RDF view declarations and Linked Data publishing activities will have completed successfully.
%BR%%BR%<img src="%ATTACHURLPATH%/rd9.png" style="wikiautogen" />%BR%%BR%
1 Click on <b>Cancel</b> to return to the initial RDF View Generation form.
---+++Related
* [[VOSSQL2RDF][Mapping SQL Data to RDF]]
|