5 comments

[ 4.4 ms ] story [ 26.7 ms ] thread
Juniper helped us implement a GraphQL / RDF bridge in about two weeks.
Really nice article, but can't help but think those who don't know SPARQL are doomed to recreate it.
One big advantage of GraphQL is mature tooling, like type definition generation, etc.
Well, I do know SPARQL :D

TerminusDB uses a datalog under the hood, but GraphQL can expose a lot of datalog like power with the right interface. Ultimately we want to have named parameteric queries in datalog exposing "pseudo-edges" in GraphQL which can be treated just like a normal field but are actually calculated.

SPARQL has some really not nice properties.

For example it's very easy to build non-monotonic queries with OPTIONAL, which really messes with reactively streamed query results.

There is a certain sweet spot in conjunctive queries + regular path expressions, with a nice syntax.