Re: [RIF] Extensible Design

Hello,

This is in response to PFPS's mail
(http://lists.w3.org/Archives/Public/public-rif-wg/2006May/0056.html)
that was itself commenting on my own mail
(http://lists.w3.org/Archives/Public/public-rif-wg/2006May/0052.html)
that was itself commenting on the proposal draft by Boley et al.
(http://lists.w3.org/Archives/Public/public-rif-wg/2006Apr/0068.html).

There are general and specific points in response to Peter's comments.

First, the general points.

1. I am not embracing all the details of the said proposal, and some
    objections may be related to some that your voiced yourself, I think
    (see below). The point, it seems, is to discuss what we agree and
    disagree on in order to find a workable consensus. In other words, let us
    bbe constructive.

2. I "admire" more the fact that Boley et al.'s are proposing a concrete
    and constructive first step towards specifying a working Rule
    Interchange Format - one in fact, that makes sense to me as workable,
    and could be developed into a clear specification of what such a RIF
    may look like and how it may be used to achieve interchange of
    rule-based programs.

Now the detailed points (quoting from your message):

PFPS > .........................................................................
PFPS >
PFPS > This is a view of the RIF starting from the parts of the proposal by Boley
PFPS > et al that Ait-Kaci likes.  Optional or questionable parts are in []s.
PFPS >
PFPS >
PFPS > The RIF is a language for interchanging rules.
PFPS >
PFPS > ABSTRACT SYNTAX
PFPS >
PFPS > The basic syntactic categories in the RIF and their construction are:
PFPS >
PFPS > 1/ Atomic constructs
PFPS >    - an infinite supply of constants
PFPS >    - a set of data values - both typed and untyped
PFPS >    - an infinite supply of variables
PFPS >    - an infinite supply of n-ary functions for each n>=1
PFPS >      [should functions be typed?]
PFPS >    - an infinite supply of n-ary predicates for each n>=1
PFPS >      [should predicates be typed?]
PFPS >
PFPS >    Constants, functions, and predicates are IRIs.
PFPS >    Typed and untyped data values are constructed according to the abstract
PFPS >    principles underlying data values in RDF.
PFPS >

That could indeed be a start. The RIF-RAF also distinguishes non-interpreted
functions (constructors) and interpreted functions.  Regarding types (or
sorts), again, the RIF-RAF accommodates such notation. Many (if not most?)
systems are typed (JRules, LIFE, Mercury, Flora-2) Systems. Frame-like
notation for classes and objects (as used in JRules, LIFE, Flora-2) is also
a notation that needs to be representable.

The draft proposal is just a ... draft. It needs elaboration of course.
I think Michael's message
(http://lists.w3.org/Archives/Public/public-rif-wg/2006May/0061.html)
makes this point clearly.

PFPS > 2/ Terms - a well-founded syntactic category constructed from
PFPS >    - constants
PFPS >    - variables
PFPS >    - data values
PFPS >    - function applications - an n-ary function with an n-tuple of terms

There could be also other notations extending the basic terms - namely
so-called "Frame-like" terms (e.g., psi-terms, F-Logic terms, etc.,
....).

PFPS >
PFPS > 3/ Formulae - a well-founded syntactic category constructed from
PFPS >    - predicate applications - an n-ary predicate with an n-tuple of terms
PFPS >    - & of a sequence of formulae
PFPS >    - | of a sequence of formulae
PFPS >    - N of a formula
PFPS >    - n of a formula
PFPS >    - A of a variable and a formula
PFPS >    - E of a variable and a formula
PFPS >    - = of an ordered pair of formulae
PFPS >    [There may be a few more formulae constructors.]

For example, constraints.

PFPS >
PFPS > 4/ Rules - a well-founded syntactic category constructed from
PFPS >    - deductive rule of an ordered pair of formulae
PFPS >    - normative rule of a formula
PFPS >    [There may be a few more rule constructors.]
PFPS >
PFPS > [There may be a few more syntactic categories to support other kinds of
PFPS > rules.]

Indeed, such as - why not? - Rewrite Rules (e.g., Maude, OBJ, ELAN) , or
Constraint-Handling Rules (CHR), for example.

PFPS > INTERCHANGE SYNTAX
PFPS >
PFPS > There will be an XML dialect that provides an interchange syntax for the
PFPS > above abstract syntax.  An XML Schema will govern this dialect.

Correct.

PFPS > EXTENSIBILITY
PFPS >
PFPS > Subsets of the above syntax that are of current commercial or technical
PFPS > interest will be identified.

Yes. And a framework will be supported to map new rule-based languages in
the RIF conceptual ontologies (along syntax, semantics (yes!), and
pragmatics).

PFPS > SEMANTICS
PFPS >
PFPS > None.

Notwithstanding Michael's answer to the above (see
http://lists.w3.org/Archives/Public/public-rif-wg/2006May/0061.html) I am
as well most puzzled with your perception.

In fact, since the beginning, the questions of "Is the RIF a language?"
and if so, "What is its syntax and its semantics?", have not been
clearly settled. In my understanding, the RIF is not a language but a
notational protocol using accepted W3C standards (XML, RDF, OWL, ...)
for representing families of rule-based languages (as more or less
circumscribed by the RIF Charter). Its objective is to enable
interchange of programs expressed in various existing rule-based idioms
to be shared or borrowed among various rule-based systems. Program
constructs expressed in various idioms that are compliant with the RIF
should be mappable to concepts and features of the ontology of the RIF
conceptual lattice (rule language classification).

Regarding semantics? Again, the RIF IS NOT A LANGUAGE, but a notation
for (families of rule) languages. The rule languages that are
representable using this notation have themselves a semantics, of course
(presumably based on the syntax they understand - see Frank MacCabe's
message http://lists.w3.org/Archives/Public/public-rif-wg/2006May/0063.html.

So what is the semantics of a RIF notation? It is in fact a representational
semantics: the XML elements expressing RIF constructs denote abstract
representation of meta-linguistic objects that are interpretable by client
systems (compilers or interpretors) based on the syntactic, semantic, and
pragmatgic features that the RIF annotation provides.

PFPS > Q1 (to everyone):  Is this what you want out of the RIF?

I want what I described - I want the RIF to enable effective rule
interchange.

PFPS > Q2 (to Hassan):  Is this what you like in the Boley et al proposal?

Yes.

PFPS > Peter F. Patel-Schneider

-hak
-- 
Hassan Aït-Kaci
ILOG, Inc. - Product Division R&D
tel/fax: +1 (604) 930-5603 - email: hak @ ilog . com

Received on Thursday, 4 May 2006 16:49:04 UTC