This is an archive of an inactive wiki and cannot be modified.

The Working Group has currently approved the following requirements. This list is a work in progress and may change in future drafts, especially for Phase 2.

Requirements listed as "General" are deemed to be fundamental properties which are presupposed by all use cases involving RIF. Whenever possible, Phase 1 and Phase 2 are listed along with links back to the specific use cases in section 3 that are deemed to motivate them.

Note that certain requirements, including some of those specified in the charter (e.g. named arguments and Horn Logic as a semantics) are not explicitly mentioned in the list below. It is intended that these requirements will be incorporated via the Rulesystem Arrangement Framework (RIFRAF). The umbrella requirement, Rule language coverage, will thus entail the entire set of requirements implicit in the RIFRAF.

Note also that a language is said to be 'covered' by RIF if RIF can be used to interchange rulesets written in that language. The Working Group expects to provide a precise framework for talking about coverage and interoperability in a later draft.



RIF must be implementable using well understood techniques, and should not require new research in e.g. algorithms or semantics in order to implement translators.

Semantic precision

RIF core must have a clear and precise syntax and semantics. Each standard RIF dialect must have a clear and precise syntax and semantics that extends RIF core.

Extensible Format

It must be possible to create new dialects of RIF and extend existing ones upwardly compatible.


For every standard RIF dialect it must be possible to implement translators between rule languages covered by that dialect and RIF without changing the rule language.

Standard components

RIF implementations must be able to use standard support technologies such as XML parsers and other parser generators, and should not require special purpose implementations when reuse is possible.

Rule language coverage

RIF must cover the set of languages identified in the Rulesystem Arrangement Framework. See the Coverage section.

Phase 1

Compliance model

RIF must define a compliance model that will identify required/optional features.

Default behavior

RIF must specify at the appropriate level of detail the default behavior that is expected from a RIF compliant application that does not have the capability to process all or part of the rules described in a RIF document, or it must provide a way to specify such default behavior.

Different semantics

RIF must cover rule languages having different semantics.

Embedded comments

RIF must be able to pass comments.

Embedded metadata

RIF must support metadata such as author and rule name.

Limited number of dialects

RIF must have a standard core and a limited number of standard dialects based upon that core.

OWL data

RIF must cover OWL knowledge bases as data where compatible with Phase 1 semantics.

RDF data

RIF must cover RDF triples as data where compatible with Phase 1 semantics.

Dialect Identification

RIF must have a standard way to specify the dialect of the interchanged rule set in a RIF document.

XML syntax

RIF must have an XML syntax as its primary normative syntax.

XML types

RIF must support an appropriate set of scalar datatypes and associated operations as defined in XML Schema part 2 and associated specifications. See the charter on Datatype support.

Merge Rule Sets

RIF should support the ability to merge rule sets.

Identify Rule Sets

RIF will support the identification of rule sets. (implicit in previous requirement)

Phase 2

XML data

RIF must be able to accept XML elements as data.