SUGGESTIONS ON DRAFT: Semantic Web Rules Working Group Charter

Status of this Document

SUGGESTIONS ON DRAFT $Revision: 1.26 $ of $Date: 2003/11/07 22:30:26 $

1. Mission

The group is chartered to develop a practical and useful rules language for the Semantic Web, along with a corresponding language for expressing [[[harold: successful rule derivations (proofs @@"justifications" sounds too much like "truth/reason maintenance")]]]. The rules language will allow the expression of the knowledge that when certain things are true, certain other things must also be true; the [[[harold: proof]]] language will allow the expression of the knowledge of how certain rules were used to reach a conclusion.

This work is based [[[harold: to a large extent]]] on the Resource Description Framework (RDF), [[[harold: @@as well as a layered RDF Schema?]]] in order to enable full interoperation with other elements of the Semantic Web, including the OWL Web Ontology Language and possible future languages for logic and knowledge representaion. The group is to extend and if necessary [[[harold: help revising, with the RDF Query group,]]] the RDF abstract and concrete syntaxes to allow expressing rules, in direct service to use cases the group gathers during its operation.

2. Scope

2.1. Motivation

The architectural vision for the semantic web has included an interoperable standard [[[harold: language]]] for rules for a long time. [[[harold: Commercially relevant rule systems have been desperately looking for a Web rules interchange standard.]]] The readiness and urgency in this field are growing, and have crossed the threshhold for Working Group creation:

The full benefit of the technology really depends on the suite of standards being complete. The community needs now to deliver the more powerful tools for expressing facts and relationships on the semantic web. So whereas OWL and RDF technologies will cover certain applications, they also lead naturally to cases in which things need to be expressed which cannot be expressed in OWL alone.

This charter also addresses a language for the exchange of proofs. This is based on the observation that:

UMLS presentation at ISWC cited CARIN: A Representation Language Combining Horn Rules and Description Logics (1996) as what they want; others cited triple (in proceedings ISWC June 2002 Sardenia)

2.2 Expressiveness

[[The section is still very rough]]

[[[harold: The group is to study rule expressiveness levels as required by Semantic Web inference systems and proof checkers. The RuleML family of sublanguages will act as input. However, only a restricted number of levels will be dealt with by this group. Inclusion criteria are to be derived from the RDF model, from OWL layering, as well as from commercially relevant rule systems.]]]

Without straying too far from the RDF model, two traditional levels of expressive power are natural candidates: the datalog and the Horn clause subsets of first-order logic (hereafter "datalog" and "Horn FOL").

    * Sticking close to the RDF model (no n-ary predicates, no
      function terms), just adding what's needed for datalog and Horn
      rules.   Just   {rdf graph} => {rdf graph}  with variables.
      (The Horn/Datalog line her appears in whether existential
      variables can be scoped inside the consequent.)
 
    * The degenerate form   {graph} => {an inconsistent graph}
      gives us classical negation, aka integrity constraints.

    * The degenerate form    [[[harold: {true}]]] => {graph}   should be
      writable as just   graph   .  [[[harold: Allowing such (existential-conjunctive) 'facts']]]
      means the rules language
      concrete syntaxes will include (possibly new) concrete syntaxes
      for RDF. 

The need for rules of the form [[[harold: "for all X and Y, if P(X,Y) then Q(X, Y)" @@stick to binary but discuss n-ary "extension path"]]] is clear. (@@cite positive Horn Clause definition, precedent in DAML J-C rules, RuleML, N3/cwm). This necessitates [[[harold: proofs]]] of the form "F is given; [[[harold: P(x, y) => Q(x, y)]]] is given where [F, P and Q are RDF graphs]; substituting A for X etc. in [[[harold: P(X, Y) gives F; this proves Q(A, B)"]]].

The scope [[[harold: encompasses two 'stacked' languages]]], one being restricted to exclude the presence of existential variables in the consequent, in other words to exclude the presence of blank nodes in the RDF graph Q; and the other not being so restricted. Each language has its advantages and disadvantages, and at the time of writing of the charter there is no clear indication that the community will not need both. When one language is a functionally subset of the other, there is clearly a great deal of interoperability to be gained by ensuring they use the same syntax.

The languages will use URIs as symbols; as in RDF.

Any further expressiveness (beyond this RDF-style Horn) must be clearly motivated in the requirements document and agreed by consensus of the Working Group, subject to right of review by related groups.

2.3 Syntax

Due to the wide and conflicted range of expected uses cases, the group is charted to work on multiple interchange syntaxes, including at least one XML-base syntax and one non-XML syntax. Specifically, there are three styles which the group is expected to consider before settling on two or more syntaxes for standardization:

  1. Reified in RDF. Instead of being directly expressed, rule expressions can be described and asserted in RDF. With this approach, any RDF syntax (such as RDF/XML or N-Triples) can express rules. Here, rules-language semantics are just semantics for a particular RDF vocabulary.

    This approach allows some reuse of the developing RDF infrastructure and allows all the tools (include rules systems) to work, without modification, with the rules expressions themselves as data.

    Unfortunately, past efforts in this direction have offered extremely verbose syntaxes, and there is little hope for improvement. Additionally, there are unanswered and perhaps troubling question about formal semantics of such systems.

    The group is expected to investigate this area thoroughly and produce a vocabulary for reifying rules (as well as [[[harold: proofs]]]) if the benefits in terms of the identified use cases outweigh the difficulties with verbosity and formal semantics.

  2. XML. There are several approaches within this camp, including:

    1. Extension of RDF/XML. An XML syntax could be developed which extends RDF/XML by adding a rule construct and scoped, quantified variables, but otherwise maintains compatibility. The downsides here are verbosity, plus carrying forward all the existing issues with RDF/XML as a syntax. This group is expected to consider this as one possible XML syntax.

    2. Vocabulary Neutral (X-Triples). An XML syntax [[[harold: such as RuleML 0.8 ]]] where the terms are not mixed in with the XML tags has certain advantages, including simplicity of validation.

    3. Ontology or Schema Directed. Alternatively, the terms can be used as tags and meta-knowledge (eg an OWL ontology or an XML Schema) can provide the information which RDF/XML gets from parseType attributes, allowing RDF and Rules information to look like more natural (and less verbose) XML.

  3. Non-XML. Expected to be more "human-readable", like [[[harold: the classical Prolog syntax, the merged Prolog/F-Logic PR-Syntax, or the compact N3 RDF-interface syntax]]]. [[[harold: This is justified at least to permit interoperation with legacy rule systems and to lower the bar to entry into the rules world via parsers and (XSLT) generators.]]]

Of course, having too many syntaxes defeats some of the purpose of standardization, so the group is encouraged to provide as many as are thoroughly justified by the use cases, but no more.

[[ Note about the syntax of the OWL Rules Language proposal, which does not maintain independence between Rules and OWL. ]]

2.5 [[[harold: Proof]]] Language

[[The section is still very rough]]

A [[[harold: proof]]] language makes it much easier for inferred information to be trusted. Proof checking is computationally much easier than theorem proving.

@@justifications based on the state of the web (ala log:semantics)? in-scope? out of scope? let/make the WG decide?

3. Deliverables

The following deliverables seem to be necessary and sufficient to achieving the mission of this Working Group:[[[harold: @@possibly re-order with "Formal specifications" coming a bit earlier]]]

5. Related Activities and Dependencies

In addition to traditional W3C wide review and consensus (specifically Internationalization, Quality, and Accessibility) we note the following dependencies:

RDF Core WG
review extension of RDF syntax to accommodate universal quantification, implication
Web Ontology WG
OWL and the Rules language are expected to be the first two major Semantic Web logics; it is important that they work well together
Semantic Web Services Interest Group
provide and review use cases, scenarios; participate in test case development and design review
P3P Community
The rules language should subsume APPEL.
XML Query WG
dependency for standard library of terms
RuleML initiative
The RuleML group has a been discussing languages in and near this space. This charter draws from some of that experience. We expect the partipation from RuleML participants. [[[harold: RuleML documents such as the RuleML Rules Lite proposal are expected to be valuable inputs to this working group.]]]
DAML Joint Committee
This group has been discussing these issues and developing an OWL Rules Language proposal, which is expected to be valuable input to this working group.
RDF Query WG
[[[harold: The SW Rules WG and the RDF Query WG are formed to run in parallel, where the groups will synergize on the areas of overlap]]], including:
  • the similarity between rule antecedents and queries
  • the similarity between proof-step binding information and query-response binding information
[[[harold: This synergy will permit shared use cases, ontologies, etc., while permitting the modular development of tools.]]]