W3C

SPARQL 1.1 Service Description

W3C Working Draft 22 October 2009

This version:
http://www.w3.org/TR/2009/WD-sparql11-service-description-20091022/
Latest version:
http://www.w3.org/TR/sparql11-service-description/
Editor:
Gregory Todd Williams, Rensselaer Polytechnic Institute, greg@evilfunhouse.com

Abstract

This document describes SPARQL Service Descriptions, a method for discovering and vocabulary for describing SPARQL services made available via the SPARQL Protocol. Such descriptions are intended to provide a mechanism by which a client or end user can discover information about the SPARQL implementation/service such as supported extension functions and details about the available dataset.

Status of this document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

This is the First Public Working Draft of the "SPARQL 1.1 Service Description" specification for review by W3C members and other interested parties.

If you wish to make comments regarding this document, please send them to public-rdf-dawg-comments@w3.org (subscribe, archives)

Implementors should be aware that this specification is not stable. Implementors who are not taking part in the discussions are likely to find the specification changing out from under them in incompatible ways. Vendors interested in implementing this specification before it eventually reaches the Candidate Recommendation stage should join the aforementioned mailing lists and take part in the discussions.

Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

The publication of this document by the W3C as a W3C Working Draft does not imply that all of the participants in the W3C SPARQL working group endorse the contents of the specification. Indeed, for any section of the specification, one can usually find many members of the working group or of the W3C as a whole who object strongly to the current text, the existence of the section at all, or the idea that the working group should even spend time discussing the concept of that section.

The W3C SPARQL Working Group is the W3C working group responsible for this specification's progress along the W3C Recommendation track.

This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

Table of Contents

1 Introduction
2 Accessing Service Descriptions
3 Service Description Vocabulary
    3.1 SPARQL Service Description Namespace
    3.2 Classes
        3.2.1 sd:Service
        3.2.2 sd:Language
        3.2.3 sd:Function
        3.2.4 sd:ScalarFunction
        3.2.5 sd:AggregateFunction
        3.2.6 sd:EntailmentRegime
    3.3 Instances
        3.3.1 sd:SPARQLQuery
        3.3.2 sd:SPARQLUpdate
    3.4 Properties
        3.4.1 sd:url
        3.4.2 sd:feature
        3.4.3 sd:supportedEntailment
        3.4.4 sd:extensionFunction
        3.4.5 sd:languageExtension
        3.4.6 sd:supportedLanguage
        3.4.7 sd:datasetDescription
        3.4.8 sd:datasetDescriptionURL
4 Example

Appendices

A References
    A.1 Normative References
B CVS History
    B.1


1 Introduction

SPARQL Service Descriptions are a way of describing the features of a SPARQL service made available via the SPARQL Protocol. This document describes both a method for discovering service descriptions from a specific SPARQL service, and an RDF schema for encoding such descriptions in RDF.

2 Accessing Service Descriptions

SPARQL services made available via the SPARQL Protocol SHOULD return a service description document at the service URL. This service description SHOULD be made available in an RDF serialization, but MAY also be provided embedded in HTML by RDFa, or other RDF representations by using content negotiation.

3 Service Description Vocabulary

3.4 Properties

4 Example

The following HTTP trace illustrates the retrieval of a service description from the SPARQL service http://www.example/sparql/.

GET /sparql/ HTTP/1.1
Host: www.example

The SPARQL service responds with an RDF/XML encoded service description (no content negotiation or RDFa encoding is used):

HTTP/1.1 200 OK
Date: Fri, 09 Oct 2009 17:31:12 GMT
Server: Apache/1.3.29 (Unix) PHP/4.3.4 DAV/1.0.3
Connection: close
Content-Type: application/rdf+xml

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
   xmlns:ex="http://example/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:scovo="http://purl.org/NET/scovo#"
   xmlns:sd="http://www.w3.org/ns/sparql-service-description#"
   xmlns:void="http://rdfs.org/ns/void#">
  <sd:Service>
    <sd:url rdf:resource="http://www.example/sparql/"/>
    <sd:extensionFunction>
      <sd:ScalarFunction rdf:about="java:com.ldodds.sparql.Distance"/>
    </sd:extensionFunction>
    <sd:datasetDescription>
      <rdf:Description>
        <ex:defaultGraph>
          <void:Dataset rdf:about="http://www.example/default-graph/">
            <void:statItem>
              <rdf:Description>
                <scovo:dimension rdf:resource="http://rdfs.org/ns/void#numberOfTriples"/>
                <rdf:value rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">100</rdf:value>
              </rdf:Description>
            </void:statItem>
          </void:Dataset>
        </ex:defaultGraph>
        <ex:namedGraph>
          <void:Dataset rdf:about="http://www.example/named-graph/">
            <void:statItem>
              <rdf:Description>
                <scovo:dimension rdf:resource="http://rdfs.org/ns/void#numberOfTriples"/>
                <rdf:value rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">2000</rdf:value>
              </rdf:Description>
            </void:statItem>
          </void:Dataset>
        </ex:namedGraph>
      </rdf:Description>
    </sd:datasetDescription>
  </sd:Service>
</rdf:RDF>

This RDF describes a SPARQL service available at the URL http://www.example/sparql/ that supports the java:com.ldodds.sparql.Distance extension function, and has a dataset with a default graph and one named graph, both described using the voiD vocabulary. The default graph contains 100 triples while the graph named http://www.example/named-graph/ contains 2000 triples.

A References

A.1 Normative References

SPARQL/Query 1.0
SPARQL Query Language for RDF, ed. Eric Prud'hommeaux, Andy Seaborne. W3C Recommendation 15 January 2008. (See http://www.w3.org/TR/rdf-sparql-query/.)