R2ML

The REWERSE Rule Markup Language (R2ML) is developed by the REWERSE Working Group I1 for the purpose of rules interchange between different systems and tools.

Scope

 * An XML based rule language;
 * Support for: integrity rules, derivation rules, production rules and reaction rules;
 * Integrate functional languages (such as OCL) with Datalog languages (such as SWRL);
 * Serialization and interchange of rules by specific software tools;
 * Integrating rule reasoning with actual server side technologies;
 * Deploying, publishing and communicating rules in a network.

Design principles

 * Modeled using MDA;
 * Rule concepts defined with the help of MOF/UML;
 * Required to accommodate:
 * Web naming concepts, such as URIs and XML namespaces;
 * The ontological distinction between objects and data values;
 * The datatype concepts of RDF and user-defined datatypes;
 * Actions (following OMG PRR submission);
 * Events;
 * EBNF abstract syntax;
 * XML based concrete syntax validated by an XML Schema;
 * Allowing different semantics for rules.