RdfAndSql

From W3C Wiki

While SQL databases are sometimes used for StoringRDF (a la Large Triple Stores) it's also quite interesting to take SQL stores that were not designed with RDF in mind and export/expose them as RDF. With SPARQL, the connection becomes even more interesting.

Some implementations map the database contents to an RDF vocabulary that is created automatically from the database schema. Others require a manual mapping of tables and columns to RDF properties and classes, but support use of existing vocabularies without an external rules engine.

SPARQL-based

  • D2R Server - SPARQL and LinkedData over HTTP; automatic, highly customizable mapping. Part of D2RQ (see below).
  • SquirrelRDF - SPARQL over API or HTTP, automatic or manual mapping. SquirrelRDF exports LDAP as well as SQL via SPARQL. See AdapterArchitecture for more along those lines.
  • SPASQL - SPARQL over MySQL, automatic mapping
  • RDQuery - RDQL and SPARQL (?) over GUI, automatic mapping (same as Relational.OWL)
  • DartGrid - is a Semantic Grid system, includes a SPARQL rewriting component using Datalog-like rules (more details in a PPT presentation and a Conference paper
  • Virtuoso Universal Server - SPARQL-based Declarative Metaschema Language for exposing any Virtuoso-housed data, as well as HTTP-, ODBC-, JDBC-, and otherwise-accessible SQL and XML data sources as URI Dereferenceable Linked RDF Instance Data. RDFized data may be retrieved as RDF/XML, JSON, N3, etc.
  • P2R - provides dynamic access to Prolog knowledge bases, which may wrap SQL queries, calls to web services, XML parsing, etc.
  • Anzo Data Collaboration Server - from Cambridge Semantics, uses SPARQL to do integrated queries of RDBMSes in addition RDF stores, LDAP directories, etc. Also pushes RDF updates to SQL inserts&updates when possible.
  • RDFox - Highly scalable in-memory RDF triple store supporting SPARQL queries and direct mapping of SQL data into RDF.

SPARQL Across Federated Sources

The Semantic Discovery System: Provides the functionality to rapidly build solutions for non technical Users to create and execute Ad Hoc queries using the network Graph User Interface (SPARQL to SQL is auto generated). Integrates and interconnects ALL data silo types - providing a virtual Semantic Web interface to all RDBMS's, Web Services, Excel Spreadsheets, and any Hybrid File Systems.

RDF/XML-based

  • dbview - Browsable RDF/XML (LinkedData) over HTTP, manual mapping (?)
  • Relational.OWL - RDF/XML dump, automatic mapping
  • D2R Map - RDF/XML dump, manual mapping
  • METAmorphoses - Produces RDF/XML through a template language that selects a subgraph. Includes servlet for publishing the RDF/XML as LinkedData. Manual mapping.
  • Triplify is a small plug-in for Web applications, which reveals the semantic structures encoded in relational databases by making database content available as RDF, JSON or Linked Data.
  • Virtuoso Universal Server (in SPARQL-based section above) facilitates retrieval of RDBMS-hosted data in RDF Linked Data form, including RDF/XML serialization.

Proprietary APIs and query languages

Other Related Dynamic RDF->SQL Mappings

  • FOPLRelationalModel - Models a target relational model as a set of objects which dynamically generate optimized SQL queries (intersections, unions, etc..) from Basic Triple Patterns

Benchmarking RDB-to-RDF Tools

Some History

Related


RdfRdbMappingExamples