Graph pattern based queries

A page for developing a test suite for pattern based graph queries expressed in RDF. See other demos on graph queries based upon graph traversal automata, and applying rules to chunks as an alternative to RDF.

Data graph:

Query graph:

Result graph:


This page uses a JavaScript library for an extension to RDF that enables triples to make declarations about sets of other triples without the need for reification. Turtle has been extended to allow the use of curly brackets for the subject or object of triples. The brackets signify an implicit blank node, which acts as a container for other triples, and which are treated as being in the same graph. In other words, a given graph may contain annotations for relationships as well as those relationships themselves.

This page further demonstrates the use of RDF to describe graph queries, where the query pattern is itself a graph with variables. This is inspired by SPARQL's CONSTRUCT, WHERE and FILTER features. Using RDF for queries and rules allows them to be manipulated as graphs by machine learning algorithms. Further work is planned on a goal directed rule language that embeds the query language to operate on potentially remote graph databases.

The Semantic Web has focused on formal logic. This work, by contrast, focuses on graph traversal and manipulation, adopting the philosophy of relativism in which views are relative to differences in perception and consideration. There is no universal, objective truth according to relativism; rather each point of view has its own truth. Further work is planned on demonstrating reasoning from within and across multiple perspectives, and on combining symbolic and statistical approaches, drawing upon decades of work in Cognitive Psychology and related disciplines.

Dave Raggett <>

eu logo This work is supported by the European Union's Horizon 2020 research and innovation programme under grant agreement No 780732, project Boost 4.0