The Rule Interchange Format (RIF), specifically the Basic Logic Dialect (BLD) [RIF-BLD], defines a means for the interchange of (logical) rules over the Web. Rules which are exchanged using RIF may refer to external data sources and may be based on certain data models which are represented using a language different from RIF. The Resource Description Framework RDF [RDF-Concepts] is a Web-based language for the representation and exchange of data; RDF Schema (RDFS) [RDF-Schema] and the Web Ontology Language OWL [OWL-Reference] are Web-based languages for the representation and exchange of ontologies (i.e. data models). This document specifies how combinations of RIF BLD Rule sets and RDF data and RDFS ontologies must be interpreted. A future version of this document will address combination with OWL ontologies.
The RIF working group plans to develop further dialects besides BLD, for example, a dialect based on Production Rules; these dialects are not necessarily extensions of BLD. Future versions of this document will address compatibility of these dialects with RDF and OWL as well. In the remainder of the document, when mentioning RIF, we mean RIF BLD [RIF-BLD].
Both RDF data and RDFS ontologies are represented using RDF graphs. Several syntaxes have been proposed for the exchange of RDF graphs, the normative syntax being RDF/XML [RDF-Syntax], which is an XML-based format. RIF does not provide a format for exchanging RDF; instead, it is assumed that RDF graphs are exchanged using RDF/XML, or any other syntax which can be used for representing RDF graphs.
This document does not, as yet, define whether or how RDF documents/graphs should be referred to from RIF rule sets. The specification of combinations in this document does not depend on (the existence of) this mechanism: it applies in case an RIF rule sets explicity points to (one or more) RDF documents, but also in case the references to the RDF document(s) are not interchanged using RIF, but using some other (out of bounds) mechanism.
A typical scenario for the use of RIF with RDF includes the exchange of rules which either use RDF data or an RDFS ontology. In terms of rule interchange the scenario is the following: interchange partner A has a rules language which is RDF-aware, i.e. it allows to use RDF data, it uses an RDFS ontology, or it extends RDF(S). A sends its rules (using RIF), possibly with a reference to the appropriate RDF graph(s), to partner B. B can now translate the RIF rules into its own rules language, retrieve the RDF graph(s) (which is published most likely using RDF/XML), and process the rules in its own rule engine, which is also RDF-aware. The use case Vocabulary Mapping for Data Integration [RIF-UCR] is an example of the interchange of RIF rules which use RDF graphs.
A specialization of this use case is the publication of RIF rules which refer to RDF graphs (notice that publication is a specific kind of interchange). In such a scenario, a rule publisher A publishes its rules on the Web. There may be several consumers who retrieve the RIF rules and RDF graphs from the Web, and translate the RIF rules to their own rules languages. The use case Publishing Rules for Interlinked Metadata [RIF-UCR] is an example of the publication of RIF rules related to RDF graphs.
An RIF rule set which refers to RDF graphs, or any use of an RIF rule set with RDF graphs, is viewed as a combination of an RIF rule set and a number of RDF graphs. This document specifies how, in such a combination, the rule set interacts with the RDF graphs. With "interaction" we mean the conditions under which the combination is satisfiable, as well as the entailments defined for the combination. The interaction between RIF and RDF is realized by connecting the model theories of RIF (specified in [RIF-BLD]) and RDF (specified in [RDF-Semantics]).
The RDF semantics specification [RDF-Semantics] defines 4 notions of entailment for RDF graphs. At this stage it has not yet been decided which of these notions are of interest in RIF. Therefore, we specify the interaction between RIF and RDF for all 4 notions.
EDITOR'S NOTE: Currently, this document only defines how combinations of RIF rule sets and RDF graphs should be interpreted; it does not suggest how references to RDF graphs are specified in RIF, nor does it specify which of the RDF entailment regimes (simple, RDF, RDFS, or D) should be used. A possible way to refer to RDF graphs and RDFS/OWL ontologies is through metadata in RIF rule sets. Note that no agreement has yet been reached on this issue, and that especially the issue of the specification of entailment regimes is controversial (see http://lists.w3.org/Archives/Public/public-rif-wg/2007Jul/0030.html and the ensuing thread).
The Appendix: Embeddings describes how reasoning with combinations of RIF rules with RDF graphs can be reduced to reasoning with RIF rule sets, which can be seen as a guide to describing how an RIF processor could be turned into an RDF-aware RIF processor. This reduction can be seen as a guide for interchange partners which do not have RDF-aware rule systems, but still want to be able to process RIF rules which refer to RDF graphs. In terms of the scenario above: if the interchange partner B does not have an RDF-aware rule system, but B can process RIF rules, then the appendix explains how the rule system could be used for processing combinations.
EDITOR'S NOTE: The future status of the appendix with the embedding is uncertain. The appendix is not about interchange, but rather about possible implementation, so it can be argued that it should not be included in this document. On the other hand, many think the appendix is useful. If we decide not to include it in this document, we might consider publishing it as a separate note (not recommendation-track document).