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.
General
Implementability
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.
Translators
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.
- Motivated by
Different semantics
RIF must cover rule languages having different semantics.
- Motivated by
Embedded comments
RIF must be able to pass comments.
- Motivated by
Embedded metadata
RIF must support metadata such as author and rule name.
- Motivated by
Limited number of dialects
RIF must have a standard core and a limited number of standard dialects based upon that core.
- Motivated by
OWL data
RIF must cover OWL knowledge bases as data where compatible with Phase 1 semantics.
- Motivated by
RDF data
RIF must cover RDF triples as data where compatible with Phase 1 semantics.
- Motivated by
Dialect Identification
RIF must have a standard way to specify the dialect of the interchanged rule set in a RIF document.
- Motivated by
XML syntax
RIF must have an XML syntax as its primary normative syntax.
- Motivated by
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.
- Motivated by
Merge Rule Sets
RIF should support the ability to merge rule sets.
- Motivated by
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.