Rex is a component of the Revelytix Semantic Software Suite. It will execute any rules written using a Rules Interchange Format (RIF) dialect (currently we support the BLD dialect, plus the NOT operator). The RIF standard is a powerful addition to the semantic technology stack from W3C because it enables rules to be written using descriptions available in OWL ontologies.

Using Rex in conjunction with Spyder and Spinner

The addition of Rex powerful inference and validation capabilities to any Enterprise Information Web.  RIF is used to express actionable knowledge, as opposed to an OWL model, which is a static description.  This knowledge is essential to enabling an enterprise governance, risk, and compliance capability.

Together with, Spyder and Spinner, Rex enables enterprise business knowledge to be combined with enterprise data assets to power new understanding of your enterprise, customers, partners and strategies. 

Using Rex

Download it for free, install in your shop, and connect it up! We offer free downloads of all Revelytix software.

From the Rex download page, please create an account for Forum Support and to receive a link with a zip download file. After you have created an account, all other software products can be downloaded as well.

We suggest reading the README and the Rex Quick Start Guide for background information and installation tips.

Support Options

For production installations, Revelytix provides Premium Support.


Rex Functionality Diagram

A RIF-BLD document that asserts potential clients for business based on relationships with partner companies might look like the following:

Document (
  Prefix(ex <>)

      Forall ?client ?business1 ?business2 (
        ex:potentialClientOf(?client ?business2) :- And(
          ex:clientOf(?client ?business1)
          ex:partnerCompanyOf(?business1 ?business2)
            ex:clientOf(?client ?business2)


When executing such a rule, Rex will query one to many suitable SPARQL endpoints to evaluate the rule, and will then use SPARQL UPDATE to store the resulting triples in a triple store designated by the user.