Semantic Web Rule Markup Language

Working Draft, 15 July 2003

This version:
Latest version:
Harold Boley (
Benjamin Grosof (
Said Tabet (


This document describes the effort undertaken jointly by the RuleML Initiative and the Joint United States / European Union ad hoc Agent Markup Language Committee to deliver a specification of a Semantic Web Rule Language. One of our goals is to complement the OWL ontology language. RuleML has already defined a markup language for publishing and sharing rule bases on the World Wide Web. RuleML builds a hierarchy of rule sublanguages upon XML, RDF, XSLT, and OWL. The syntax work should take into consideration both the human needs and the interchange requirements.

This document will serve as the starting point for the various sections defined in previous working sessions, e.g. Requirements and Use Cases, Syntax, Semantics and Examples illustrating key language features.

Status of this document

This document is a working draft, for discussion only. This document is a work in progress and may be updated, replaced, or rendered obsolete by other documents at any time.

Table of Contents

  1. Introduction, Background and Motivation
    1. The Need for Rules on the Web
    2. The Rule Markup Initiative
    3. Rules in the Semantic Web and Web Services
  2. Requirements and Use Cases
  3. Presentation Syntax
  4. XML Markup
  5. Language Semantics

1. Introduction, Background and Motivation

1.1 The Need for Rules on the Web

Rules have traditionally been used in theoretical computer science, compiler technology, databases, logic programming, and Artificial Intelligence. The Semantic Web tries to represent information in the World Wide Web such that it can be used by machines not just for display purposes, but for automation, integration, sharing and reuse across applications. Rule Markup for the Semantic Web has been a hot topic since rules were identified as one of its design issues.

However, Semantic Web rules have been less systematically studied than the corresponding ontology (actually, taxonomy) markup. The Rule Markup Initiative tries to fill the gap by exploring rule systems (e.g., extended Horn logics) suitable for the Web, their (XML and RDF) syntax, semantics, tractability/efficiency, and transformation and compilation. Both derivation rules (which may be evaluated bottom-up as in deductive databases, top-down as in logic programming, or by tabled resolution as in XSB) and reaction rules (also called "ECA" - "Event-Condition-Action" -- or "trigger" rules), as well as possible combinations, are being considered.

1.2 The Rule Markup Initiative

The RuleML Initiative started in August 2000 during the Pacific Rim International Conference on Artificial Intelligence (PRICAI 2000). It has brought together expert teams from several countries, including leaders in Knowledge Representation and Markup Languages, from both academia and industry.

Among our industrial participants are rules engine vendors, Web technology vendors, XML/RDF tools vendors and also technology users such as financial corporations, telecom companies and some of the major Web portals and ASPs. The RuleML Initiative is collaborating with numerous related efforts such as the complementary Java Rules Engine API specification, the W3C RDF working group, the DAML group, W3C P3P Activity, PMML, and many others. This collaboration will enable RuleML to share mechanisms and provide a rules language to existing and emerging industry standards such as the Semantic Web and RDF, P3P, CC/PP and EDI (Electronic Data Interchange).

1.3 Rules in the Semantic Web and Web Services

In the context of the Semantic Web, rules may be built on F-logic for RDF inference, as pioneered by SiLRI. This work has recently been extended for rules with expressive bodies (full FOL syntax) in TRIPLE. Rules may also be used to enhance the content of Web pages and XML documents in various ways. E.g., derivation rules allow the dynamic inclusion of derived facts, while reaction rules allow the specification of behavior in response to browser events.

2. Requirements and Use Cases

The requirements and use cases is a link to the work done by Stefan Decker and Mike Dean and other JC members. Details on earlier presentations can be found in the archives.

3. Presentation Syntax

The Rule Shorthand and Presentation Syntax is described here.

4. XML Markup

We give a high level overview of the markup with examples from the discount use case. The XML markup is a step forward to provide a more 'human' friendly RuleML syntax based on input from various members and participants. As a result, the proposed syntax will allow for a shortened rules markup and an easier to use syntax.

The following first example is the RuleML discount datalog example re-implemented in the simplified markup: Discount Example

A more detailed list of examples is presented here.

5. Language Semantics

Initial discussions on semantics can be summarized by the notes sent by Benjamin Grosof from the June 24th, 2003 JC telecon.