little big brain
Product / Knowledge graph

One graph of facts.
Checked on write. Replayable by commit.

Records become linked facts. SHACL rules check writes, and a write that breaks one is refused. A read can name a commit and get the same rows again.

[01] In the console

Bad writes are refused with the reason.

In reject mode, a write that breaks a rule returns 400. Nothing from it is stored.

The Query page: a SPARQL query for deals with their owner, amount and close date, and five rowsThe Query page: a SPARQL query for deals with their owner, amount and close date, and five rows
The Validation tab: two active shapes in reject mode, a deal has an owner and an issue has one team, both conformingThe Validation tab: two active shapes in reject mode, a deal has an owner and an issue has one team, both conforming
The Query page with time travel at commit 3: issue AUTH-112 reads Todo, as it was thenThe Query page with time travel at commit 3: issue AUTH-112 reads Todo, as it was then
SPARQL 1.1.

Queries over HTTP and the SPARQL 1.1 Protocol. YASGUI, Protégé and RDFLib connect.

Warn or reject.

A rejection lists the rule, the record and the path.

Commit numbers.

Writes get a commit number. Pin a read with as_of_commit_seq.

A SPARQL query for parties with RDFS reasoning: 14 rowsA SPARQL query for parties with RDFS reasoning: 14 rows
With RDFS, organizations, persons and users count as parties: 14 rows.
[02] Reasoning

Inferred facts at query time.
RDFS and OWL, chosen per query.

Set entailment on a query: none, subclass, rdfs or owl. Inferred facts are computed when you ask. Nothing extra is stored.

  • subClassOf, subPropertyOf, domain and range.
  • inverseOf, TransitiveProperty, propertyChainAxiom and sameAs.
  • unionOf, intersectionOf, hasValue, someValuesFrom and allValuesFrom.
Reasoning
[03] What is included

The W3C standards, on one graph.

Standard tools for RDF and SPARQL work with your graph.

SPARQL 1.1

SELECT and ASK over HTTP. CONSTRUCT and DESCRIBE as Turtle or N-Triples.

INSERT DATA

SPARQL Update for new facts. A retry with the same Idempotency-Key is safe.

SHACL

Shapes published in off, warn or reject mode. A dry run checks a write first.

OWL

Entailment per query: none, subclass, rdfs or owl.

commit-at

Find the commit that was current on a date.

compare

Compare what the graph says at two points in time.

[04] How it works

A write becomes a commit.

Step 01

Write facts.

JSON records through the SDKs, or RDF. The write gets a commit number.

Step 02

Check them.

Published SHACL shapes check the write. A refused write stores nothing.

Step 03

Read them again.

Pin a read to a commit. The same query returns the same rows.

[05] FAQ

Questions about the graph.

Do I need to know RDF?

No. The SDKs take JSON records and return JSON. SPARQL and OWL are there when you need them.

Which SPARQL features are supported?

SPARQL 1.1 queries and the SPARQL 1.1 Protocol. SPARQL Update supports INSERT DATA.

What does a rejection return?

HTTP 400 with the violations: the rule, the record, the path and a message.

Can I check a write before I send it?

Yes. A commit with dry_run=true returns the SHACL result and stores nothing.

Next step

Try it on your data.