www.openlinksw.com
docs.openlinksw.com

Book Home

Contents
Preface

Overview
Installation Guide
Quick Start & Tours
Sample ODBC & JDBC Applications
Conceptual Overview
Administration
Data Access Interfaces
SQL Reference
SQL Procedure Language Guide
Database Event Hooks
Data Replication, Synchronization and Transformation Services
Web Application Development
XML Support
RDF Data Access and Data Management
Data Representation
SPARQL
RDF Graphs Security
Automated Generation of RDF Views over Relational Data Sources
RDF Insert Methods in Virtuoso
Integration Middleware
Linked Data
Inference Rules & Reasoning
Performance Tuning
RDF Data Access Providers (Drivers)
Web Services
Runtime Hosting
Internet Services
Free Text Search
TPC C Benchmark Kit
Using Virtuoso with Tuxedo
Appendix
Virtuoso Functions Guide

Abstract

Starting with version 4.5, Virtuoso provides built-in support for SPARQL, the standard query language for RDF and the semantic web. Adoption of SPARQL with Virtuoso is effortless, as any existing SQL client applications and stored procedures can take advantage of SPARQL simply by using it in the place of or inside SQL queries. Additionally, Virtuoso offers the standard SPARQL protocol to HTTP clients. From version 5.0.7, Virtuoso can be used as the RDF store/query processor of the Jena and Sesame RDF frameworks.

This chapter discusses Virtuoso's RDF triple storage and query capabilities. This discusses storing RDF data as well as mapping existing relational data into RDF for SPARQL access. Numerous SPARQL language extensions and standard compliance are covered.

Table of Contents

15.1. Data Representation
15.1.1. IRI_ID Type
15.1.2. RDF_BOX Type
15.1.3. RDF_QUAD and other tables
15.1.4. Short, Long and SQL Values
15.1.5. Special Cases and XML Schema Compatibility
15.1.6. SQL Compiler Support - QUIETCAST option
15.1.7. Dynamic Renaming of Local IRI's
15.2. SPARQL
15.2.1. SPARQL Implementation Details
15.2.2. Query Constructs
15.2.3. SPARQL Web Services & APIs
15.2.4. Troubleshooting SPARQL Queries
15.2.5. Extensions
15.2.6. SPARQL Inline in SQL
15.2.7. API Functions
15.2.8. Useful Internal Functions
15.2.9. Default and Named Graphs
15.2.10. Calling SQL from SPARQL
15.2.11. SPARQL DESCRIBE
15.3. RDF Graphs Security
15.3.1. RDF Graph Groups
15.3.2. NOT FROM and NOT FROM NAMED Clauses
15.3.3. Graph-Level Security
15.3.4. Understanding Default Permissions
15.3.5. Initial Configuration of SPARQL Security
15.3.6. Application Callbacks for Graph Level Security
15.4. Automated Generation of RDF Views over Relational Data Sources
15.4.1. Introduction
15.4.2. One Click Linked Data Generation & Deployment
15.4.3. Manual Linked Data Generation & Deployment using the Conductor's HTML-based wizard
15.5. RDF Insert Methods in Virtuoso
15.5.1. HTTP Post using Content-Type: application/sparql-query
15.5.2. HTTP PUT using Content-Type: application/rdf+xml
15.5.3. SPARQL Insert using LOAD
15.5.4. SPARQL Insert via /sparql endpoint
15.5.5. SPARQL Insert via HTTP Post using Content-Type: application/sparql-query and ODS wiki
15.5.6. Using WebDAV
15.5.7. Using Virtuoso Crawler
15.5.8. Using SPARQL Query and Sponger (i.e. we Sponge the Resources in the FROM Clause or values for the graph-uri parameter in SPARQL protocol URLs)
15.5.9. Using Virtuoso PL APIs
15.5.10. Using SIMILE RDF Bank API
15.5.11. Using RDF NET
15.5.12. Using the RDF Proxy (Sponger) Service
15.6. Integration Middleware
15.6.1. RDFizer Middleware (Sponger)
15.6.2. Enterprise Data Access & Integration
15.6.3. RDF Views over RDBMS Data Source
15.7. Linked Data
15.7.1. IRI Dereferencing For FROM Clauses, "define get:..." Pragmas
15.7.2. IRI Dereferencing For Variables, "define input:grab-..." Pragmas
15.7.3. URL rewriting
15.7.4. Examples of other Protocol Resolvers
15.8. Inference Rules & Reasoning
15.8.1. Introduction
15.8.2. Making Rule Sets
15.8.3. Changing Rule Sets
15.8.4. Subclasses and Subproperties
15.8.5. OWL sameAs Support
15.8.6. Implementation
15.8.7. Enabling Inferencing
15.8.8. Examples
15.9. Performance Tuning
15.9.1. General
15.9.2. Index Scheme Selection
15.9.3. Erroneous Cost Estimates and Explicit Join Order
15.9.4. Loading
15.9.5. Using SPARUL
15.9.6. DBpedia Benchmark
15.9.7. RDF Store Benchmarks
15.10. RDF Data Access Providers (Drivers)
15.10.1. Virtuoso Jena Provider
15.10.2. Virtuoso Sesame Provider
15.10.3. Virtuoso Redland Provider