Introducing terminology for SPARQL (glossary)
Before proceeding to the detailed structure of queries, it is worth pausing to review the concepts introduced so far.
Throughout the material on SPARQL, you may come across terms that are unfamiliar. This step consists of a comprehensive glossary of related terms.
If you wish to download a version of this glossary it is available in PDF format at the bottom of this page.
An RDF triple is a statement of the form subject-predicate-object expressed in one of the RDF formalisms.
RDF triple pattern
An RDF triple pattern is the same as an RDF triple except that any or all of its three constituents may be replaced by a variable.
An RDF graph is a set of RDF triples. You may already know that ‘graph’ in mathematics has two distinct meanings:
(1) a diagram showing points arranged by their relationship to an X axis and a Y axis;
(2) a set of vertices (or nodes) linked by edges (or arcs).
In the case of RDF the second meaning applies, where the subject and object in a triple are vertices, and the predicate is an edge that links them by pointing from subject to object.
Formally, an RDF graph can be described as a directed labelled multigraph, which means (a) that edges are directional (you cannot switch subject and object without changing the statement), (b) that edges are named (by the predicate identifier), and (c) that there can be multiple edges linking two vertices (resources may be related in different ways).
An RDF dataset is a set of RDF triples comprising a default RDF graph, which by definition is unnamed, and zero or more named RDF graphs. The idea behind this segmentation is that SPARQL queries can be explicitly confined to a named subset rather than running over the whole dataset.
We use this term to refer to a conjunction of RDF triple patterns. It is therefore the same as an RDF graph, except that its constituents are RDF triple patterns (which contain variables) as opposed to normal RDF triples (which don’t). Note that in a query, the expression following the keyword WHERE is a graph pattern; this is why graph patterns are important.
SPARQL Protocol client
A SPARQL Protocol client is an HTTP client that sends requests for SPARQL Protocol operations. As you probably know, ‘client’ here refers to a program that sends a request to another program, possibly running on another computer, over a network; the other computer is known as the ‘server’.
SPARQL Protocol service
A SPARQL Protocol service is an HTTP server that services requests for SPARQL Protocol operations.
A SPARQL endpoint is a SPARQL Protocol service, identified by a given URL, which listens for requests from SPARQL clients.
© This work is a derivative of ‘Using Linked Data Effectively’ by The Open University (2014) and licensed under CC by 4.0 International Licence adapted and used by the University of Southampton. http://www.euclid-project.eu/