Warning:
This wiki has been archived and is now read-only.

MuGS

From RDF Working Group Wiki
Jump to: navigation, search

Just a proposal

MuGS — An RDF Multi-Graph Syntax

Requirements

  • Convey SPARQL datasets
  • Convey assertions (metadata)
  • Allow blank nodes shared between graphs
  • Have defined and sensible semantics

Overview

A MuGS document is like a Turtle document, except that rather than representing a single RDF graph, it represents an RDF graph which is segmented into zero or more subgraphs.

The syntax is just turtle with the addition of curly braces, in the object position, containing more turtle statements.

Example 1:

   <a> <b> <c>

Example 2:

   <a> <b> { <x> <y> <z> }

Example 3:

   @prefix eg: <http://example.com/>.
   eg:s1 eg:p1 3, 4, 5.
   eg:s2 eg:p2 { eg:s1 eg:p1 3, 4, 5 }

Example 4:

   @prefix : <http://example.com/>.
   @prefix owl: <http://www.w3.org/2002/07/owl#>.
   :clark owl:sameAs :superman.
   :lois :knows { :clark :wears :glasses }.
   # later we'll want to see whether this entails:
   #   :lois :knows { :superman :wears :glasses }.

A MuGS document has three kind of triples:

  • default graph triple are those which appear outside any {} and do not have a {} as the object
  • graph relation triples are those which have a {} expression as the object
  • embedded triples are those which occur inside {} expression.

A triple may be both a graph relation triple and an embedded triple, if {} expressions are nested.

The merged graph is the merge of all of these; it is defined for structural purposes, to be the scope of MuGS blank nodes. Its truth is not usefully related to the truth of its MuGS document.

Subgraph-Ranged Predicates

@@@