# 14. RDF Database and SPARQL

Chapter Contents | Prev | Next
Keyword Search:
www.openlinksw.com
docs.openlinksw.com
Book Home
Contents
Preface
Overview
Installation Guide
Quick Start & Tours
Sample ODBC & JDBC Applications
Conceptual Overview
Server 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 Database and SPARQL
Data Representation
RDF and SPARQL API and SQL
IRI Dereferencing
RDF Views -- Mapping Relational Data to RDF
SPARQL Implementation
RDF Inference in Virtuoso
Using Full Text Search in SPARQL
Aggregates in SPARQL
Virtuoso SPARQL Query Service
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.

This chapter discusses Virtuoso's RDF triple storage and query capabilities. This is divided into a discussion of the RDF data representation, the SPARQL and SQL API's, protocol support and standard compliance notes.

## Table of Contents

14.1. Data Representation
14.1.1. IRI_ID Type
14.1.2. RDF_QUAD and other tables
14.1.3. Short, Long and SQL Values
14.1.4. Special Cases and XML Schema Compatibility
14.1.5. SQL Compiler Support - QUIETCAST option
14.2. RDF and SPARQL API and SQL
14.2.1. SPARQL Inline in SQL
14.2.2. API Functions
14.2.3. Useful Internal Functions
14.2.4. Default and Named Graphs
14.2.5. Calling SQL from SPARQL
14.2.6. SPARUL -- an Update Language For RDF Graphs
14.3. IRI Dereferencing
14.3.1. IRI Dereferencing For FROM Clauses, "define get:..." Pragmas
14.3.2. IRI Dereferencing For Variables, "define input:grab-..." Pragmas
14.4. RDF Views -- Mapping Relational Data to RDF
14.4.1. Introduction
14.4.2. Rationale
14.4.3. Quad Map Patterns, Value and IRI Classes
14.4.4. Configuring RDF Storages
14.4.5. Translation Of SPARQL Triple Patterns To Quad Map Patterns
14.4.6. Describing Source Relational Tables
14.5. SPARQL Implementation
14.5.1. SPARQL and XQuery
14.6. RDF Inference in Virtuoso
14.6.1. Introduction
14.6.2. Making Rule Sets
14.6.3. Changing Rule Sets
14.6.4. Subclasses and Subproperties
14.6.5. Implementation
14.6.6. Enabling Inference
14.6.7. Examples
14.7. Using Full Text Search in SPARQL
14.7.1. Specifying What to Index
14.7.2. Time of Indexing
14.7.3. Free-Text Indexes on RDF Views
14.8. Aggregates in SPARQL
14.8.1. Examples
14.8.2. Note on Aggregates and Inference
14.9. Virtuoso SPARQL Query Service
14.9.1. Introduction
14.9.2. Service Endpoint
14.9.3. Request Methods
14.9.4. Functions
14.9.5. Request Parameters
14.9.6. Response Codes
14.9.7. Response Format
14.9.8. Additional Response Formats -- SELECT
14.9.9. Examples
14.9.10. Implementation Notes
14.9.11. Virtuoso Semantic Bank end point
14.9.12. RDF proxy service

Previous Changing XML entities in DOM style | Chapter Contents | Next Data Representation