R2ML

{{cleanup rewrite|date=February 2025}}

The REWERSE Rule Markup Language (R2ML) is developed by the [http://www.rewerse.net 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;{{citation needed|date=October 2019|reason=need an in-context explanation of the different types of repulse supported. I have removed the speculative wikilinks for now.}}
  • 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.

See also