SPARQL extensions are features that go beyond the specification of either the SPARQL query language or the SPARQL protocol. The list on this page is an attempt to catalog the different types of extensions that have been proposed or implemented for SPARQL. Each page below describes the type of extension and links to information on existing implementations, discussion threads, or other relevant material. LeeFeigenbaum encourages people to participate in discussions of these extension topics on the firstname.lastname@example.org mailing list.
- Insert, update, and delete. Building on SPARQL to modify RDF data stores.
- Accessing RDF lists and collections. Query constructs to access list and collection members.
- Path expressions/property chains. Query constructs to specify repeating property structures.
- Selecting expressions. Use expressions to generate new values in a
SELECTprojection or a
- Aggregates. Aggregate functions (
MAX, ...) and associated machinery (
- Subqueries. Various forms of embedding one SPARQL query within another.
- Other entailment regimes. Applying SPARQL to entailment regimes other than simple entailment (e.g. RDF, RDFS, or OWL-DL entailment).
- Computed properties. General mechanisms for attaching semantics other than graph matching to particular predicates. (Many of the examples in this category are used for free text searching inside SPARQL queries.)
- CONSTRUCT *. Defining a
CONSTRUCT *feature to easily extract matching subgraphs.
- Service description. Vocabularies and protocols for discovering the capabilities of a SPARQL endpoint.
- Describe strategies. Approaches for implementing
- Functions. Implementation-defined functions for use in
FILTERclauses (and potentially in select clauses and construct templates).
- Pragmas. Common syntax for implementation-specific options, pragmas, and directives/
- Federated query. Approaches to federating SPARQL endpoints.
- SPARQLScript. SPARQL-based scripting.
Andy Seaborne maintains notes on SPARQL extensions on a Jena wiki page. I've tried to include the information from that page here and on the pages linked to above.