Document Conventions

Language Form

The operations in this document contain language forms describing their use. These are meant as illustrative forms of the formal grammar described in the SPARQL 1.1 Query document. Any discrepancies between the language forms in this document and the grammar in SPARQL 1.1 Query will defer to the formal grammar in SPARQL 1.1 Query.

Language forms are shown informally in this document as for instance:

( **WITH** *[IRIref](../../../sparql11-query/grammar/#rIRIREF)*  )?
( ( *[DeleteClause](../../../sparql11-query/grammar/#rDeleteClause) [InsertClause](../../../sparql11-query/grammar/#rInsertClause)*? ) | *[InsertClause](../../../sparql11-query/grammar/#rInsertClause)* )
( **USING** ( **NAMED** )? *[IRIref](../../../sparql11-query/grammar/#rIRIREF)* )*
**WHERE** GroupGraphPattern

Unlike other forms of EBNF where square brackets denote optionality, here [] is used for blank nodes, as in SPARQL Query. | is used to denote alternatives, () is used for grouping terms, ? indicates 0 or 1 occurrence of a term, * indicates 0 or more occurrences, and + indicates 1 or more occurrences.

BOLD indicates language keywords. Italics indicate syntactic items defined in the SPARQL 1.1 Query Grammar, where we occasionally refer to productions by links. Unitalicized text indicates a local term that will have a more complex (and exact) definition in the formal grammar.

Example update requests are shown as follows:

PREFIX dc: <http://purl.org/dc/elements/1.1/>
INSERT { <http://example/egbook> dc:title  "This is an example title" } WHERE {}

Note:

PREFIX definitions and the

syntax for IRIs in update requests in general follow the same conventions as in the

SPARQL1.1 Query Language.

Data is shown in Turtle syntax as follows:

@prefix dc:   <http://purl.org/dc/elements/1.1/> .
@prefix :     <http://example.org/books/> .
:book0  dc:title  "SPARQL Tutorial" .

Terminology

When this document uses the words MUST, MUST NOT, SHOULD, SHOULD NOT, MAY and recommended, and the words appear as emphasized text, they must be interpreted as described in RFC 2119 [RFC2119].

The following terms are also in use throughout this document:

  • Operation - An action to be performed that results in the modification of data in a Graph Store expressible as a single command, e.g. INSERT or DELETE.
  • Request - A sequence of zero or more operations that is sent to a Graph Store. When using the SPARQL 1.1 Protocol for RDF a request will be one HTTP POST.

The following terms are also used in this document as defined in the SPARQL 1.1 Query Language:

  • QuadPattern - A syntactic construct that refers to a set of triple patterns, similar to ConstructTriples, but potentially involving the GRAPH keyword to indicate that a set of triples is to be inserted into/deleted from a named graph.
  • QuadData - A QuadPattern without variables.
  • GroupGraphPattern - A syntactic construct for referring to a set of triples, possibly with complex constraints.