I'm writing my master thesis about linked data in archives and I was wondering if you could help me with a question. I've read this book about LD and came along this sentence:
SPARQL is the query language of RDF triple stores, but the query language goes beyond the generation of lists. It can also be used to assert new RDF statement and have them saved to the store.
I'm not quite sure if I understood the second part of it. Is it true that SPARQL works like a reasoner to get new statements (inferences?) out of RDF-graph? Or how should I understand the sentence above?
The more complete quotation is:
SPARQL is the query language of RDF triple stores, but the query language goes beyond the generation of lists. It can also be used to assert new RDF statement and have them saved to the store. It provides the means for answering Boolean questions or performing mathematical functions.
In this paragraph, the author lists different forms of SPARQL queries:
SELECT
— 1st sentence;CONSTRUCT
— 2nd sentence;UPDATE
(DELETE
/INSERT
) — 2nd sentence;ASK
— 3rd sentence.As for reasoning, many triplestores are able to infer new statements from existing ones.
New statements can be materialized (saved in a triplestore) or not.
There exist official SPARQL 1.1 Entailment Regimes. The document defines:
In short, new statements can be generated using:
OWL axioms serialized into RDF and stored in same triplestore,
OWL constructs can be supported more or less partially;
inference rules written in more or less common rule languages.
As an exercise, you can try GraphDB Cloud and play with different rulesets.
See also this answer for some examples.