Lack of a standard rules language Re: Toward easier RDF: a proposal

Dear all,

reading the below:

> 8. Lack of a standard rules language.  This is a big one.
> Inference is fundamental to the value proposition of RDF,
> and almost every application needs to perform some kind
> of application-specific inference.  ("Inference" is used
> broadly herein to mean any rule or procedure that produces new
> assertions from existing assertions -- not just conventional
> inference engines or rules languages.)  But paradoxically,
> we still do not have a *standard* RDF rules language.
> (See also Sean Palmer's apt observations about N3 rules.[14]) We want 
> to move forward the standardisation of N3 since I think that it is 
> really worth it:

I think this is a good opportunity to get back to N3 Logic. We have 
worked with N3 for years now and there are several reasons why I believe 
that it should be standardized:

  * Syntax:

    For someone knowing turtle, writing N3 rules is easy since N3
    seamlessly extends the rdf's turtle syntax without having to fall
    back on debatable constructs like reification.
    For a triple :s :p :o. a rule {?x :p :o} => {?x :pp :oo}. would lead
    to:s :pp :oo.

    For reification, N3 also provides a solution in general which is
    very close to the recent proposal of RDF* and could be aligned with it.
    Example::s :says {:s :p :o}.

  * Practice:

    There are already existing reasoners for N3 Logic Like Cwm
    ( and EYE
    ( The latter developed in
    industry which can make us at least confident that N3 is able to
    cover "real" use cases.

    We used N3 in many practical use cases and had positive experiences
    (for example

We already did some first steps towards the standardization by defining 
a model theory and identifying current problems:

  * A recent talk about this topic at the RuleML Webinar
    ( can be accessed

  * Earlier work was presented at RuleML 2015 (Slides:,
  * We furthermore hope to soon publish a journal paper about this topic
    which is currently under review.

*Call to action:* who would support and/or join a W3C community group 
around an N3 rule language?



P.S.: To also get back to the rest of the ongoing discussion: N3 
supports blank nodes and literals in all positions and treats lists as 
"first class citizens" (in practice that means that there are no blank 
nodes involved when expressing lists).

Dörthe Arndt
Researcher Semantic Web
imec - Ghent University - IDLab | Faculty of Engineering and Architecture | Department of Electronics and Information Systems
Technologiepark-Zwijnaarde 19, 9052 Ghent, Belgium
t: +32 9 331 49 59 |  

Received on Thursday, 22 November 2018 14:37:05 UTC