Specification of RuleML 1.02

From RuleML Wiki
Jump to: navigation, search

Authors: Harold Boley, Adrian Paschke, Tara Athan, Adrian Giurca, Nick Bassiliades, Guido Governatori, Monica Palmirani, Adam Wyner, Alexander Kozlenkov, Gen Zou

This version: ruleml.org/1.02

Quick links:

RuleML Families : Specification of RuleML 1.02

Prerequisites: None, Level: Semi-formal

Deliberation RuleML : Specification of Deliberation} RuleML

Prerequisites: None, Level: Semi-formal

Reaction RuleML : Specification of Reaction RuleML

Prerequisites: None, Level: Semi-formal

Consumer RuleML : Specification of Consumer RuleML

Prerequisites: None, Level: Semi-formal

Primer : Tutorial on RuleML

Prerequisites: None, Level: Informative

Implementations : Implemented RuleML tools

Prerequisites: None, Level: Informative

Latest version: ruleml.org/spec

Version history:
Date Version
2016-0x-yy -

Version 1.02 Wiki-dev

Copyright © RuleML Inc. 2015 - 2016 -- Licensed under the RuleML Specification License 1.0 (http://ruleml.org/licensing/RSL1.0-RuleML)

This specification defines RuleML as a system constituting a knowledge representation architecture designed for the uniform interchange of the major kinds of Web rules across various logics and platforms. RuleML has broad coverage as a system of families of languages for Web rules, through the Deliberation RuleML, Consumer RuleML, and Reaction RuleML families.

RuleML 1.0 has been composed of two families, Deliberation RuleML 1.0 and Reaction RuleML 1.0. The resolution of the language lattice of the Deliberation RuleML family has been increased with new language-refinement options in Deliberation RuleML 1.01.

The highlights of RuleML 1.02 include the following:

The key advancement of the RuleML 1.02 release, developing the two earlier RuleML families (Deliberation RuleML 1.01 and Reaction RuleML 1.0) to Deliberation RuleML 1.02 and Reaction RuleML 1.02, is the novel RuleML family started with Consumer RuleML 1.02 as an initial integration of Deliberation and Reaction RuleML. The RuleML 1.02 System as a whole is described in RuleML 1.02: Deliberation, Reaction and Consumer Families[1].

The first figure below shows an overview of the subclass, syntactic specialization, and overlap relationships between the Deliberation, Reaction, and Consumer RuleML families of RuleML 1.02.


In the second figure, below, the syntactic containment relationships between the Reaction, Deliberation and Consumer families are shown in a Venn diagram. The fill area of the three ellipses indicate sets of language constructs that are the syntax of the three families. The stars indicate language features, e.g. rules, first-order logic expressivity, or performatives, that may be combined to generate language constructs. The diagram indicates that there are no language features exclusive to Consumer RuleML - these would appear as stars in region VII. However, because Consumer RuleML integrates some features that are not held in common by Reaction and Deliberation RuleML (stars in regions III and IV), there are constructs (fill area of region VII) in Consumer RuleML that are neither Deliberation nor Reaction RuleML constructs.


The RuleML 1.02 System was developed from, and revises, the Overarching Specification of Web Rules[2], which led to RuleML Version 1.0.

The family of Deliberation RuleML, as shown on the left of the first figure, covers First-Order Logic (FOL), optionally with equality and negation-as-failure, which itself covers Derivation RuleML, including Horn Logic and its function-free specialization, Datalog. An introduction to Deliberation RuleML, with a focus on Datalog, is given in the Primer.

The family of Reaction RuleML, as shown on the right of the first figure, includes spatial/temporal Derivation Rules (DR), Knowledge Representation (KR) calculi / logics for temporal/event/action/situation reasoning, as well as Event-Condition-Action (ECA) rules, Production (CA) rules, and Trigger (EA) rules, along with distributed rule-based Complex Event Processing (CEP).

Versions of RuleML prior to 1.02 assumed predefined default semantics for languages, which could be overridden by explicit semantic variant attributes.[3] Rather than distinguishing, by predefinition, one semantics for each language, RuleML 1.02 assumes no default semantics but by default keeps the semantics unspecified. This is motivated by the following concerns.

  • Security: Given the unspecified default semantics, no wrong assumptions can be made about a specific semantic default, e.g. in case of absent semantic variant attributes.
  • Scalability: Because of the vast number of languages created by syntactic feature combination[4], requiring the definition of a default semantics for each of them (even if it is a non-anchor language) would not lead to a scalable language system.
  • Refinability: Starting with syntactic interchange of knowledge structures, their semantics can be partially and gradually introduced, until their complete semantic characterization is achieved.
  • Requirements from domains (verticals) where documents need to be interchanged without (immediately) giving them a fixed semantics. Here are two major examples:
    • In the legal domain, texts can be (initially) open to multiple interpretations.[5]
    • There exist languages, such as UML diagrams[6] (e.g. software modeling) and RDF Datasets[7] (e.g. metadata modeling), that inherently lack formal semantics for their entirety. For such languages, to achieve non-ambiguity it is necessary to specify the intended or implemented semantics for each particular document or engine, resp. There is a need for a means to declare the semantics for such languages.

Therefore, RuleML 1.02 permits the definition of semantics styles, including predefined styles.

1 Shared Specification Pages of the RuleML 1.02 System

The following specification (sub)pages are shared (wiki-technically, as transclusions) across two or more families of the RuleML 1.02 System:

2 References

  1. RuleML 1.02: Deliberation, Reaction and Consumer Families http://ceur-ws.org/Vol-1417/paper6.pdf
  2. The Overarching Specification of Web Rules: http://cs.unb.ca/~boley/papers/RuleML-Overarching.pdf
  3. The Overarching Specification of Web Rules, Section 2
  4. The MYNG 1.01 Suite for Deliberation RuleML 1.01: Taming the Language Lattice, http://ceur-ws.org/Vol-1211/paper7.pdf
  5. https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=legalruleml
  6. Unified Modeling Language™ (UML®) Resource Page: http://uml.org/
  7. RDF 1.1: On Semantics of RDF Datasets: https://www.w3.org/TR/rdf11-datasets/