Rulesets

Hello,

I do not understand on grammar rule in the BLD rule language grammar
http://www.w3.org/2005/rules/wiki/BLD#EBNF_for_RIF-BLD_Rule_Language.
Namely:

   Ruleset  ::= 'Ruleset' IRIMETA? '(' (RULE | Ruleset)* ')'
   IRIMETA  ::= Frame

I remember Harold expressing some argument for using a Frame for the
metadata, although I do not remember his rationale (but see below).
My question has to do with the first rule imposing a uselessy wordy
packaging of a set of rules into something like:

    Ruleset(rule_1
            Ruleset(rule_2
                    ...
                    Ruleset(rule_n)...))

Instead of simply:

    Ruleset(rule_1
            rule_2
            ...
            rule_n)

The above would simply use a simpler BNF rule like:

   Ruleset  ::= 'Ruleset' IRIMETA? '(' RULE* ')'

If the idea behind the originally proposed wordy Ruleset construct is
to allow nested meta-annotations, then why not rather use:

   Ruleset  ::= 'Ruleset' IRIMETA? '(' (RULE* | Ruleset) ')'

instead?

As for meta annotation represented as a Frame, I am sort of puzzled...

If the intent is to take advantage of the structural appearance of
a Frame to 'organize' such information in a structured manner, then
I wonder why the designers of BLD (i.e., Harold and Mike) have gone
to such contrivances to introduce so many different syntactic constructs
(namely: positional terms, slotted terms, frames, atoms) rather than
proceed in the manner of AI languages such as Prolog and LISP where
*everything* is a term or S-Expression (all other constructs being
syntactic sugar which unfolds into such basic stuctures). Besides
simplifying the syntax and the semantics, this unique-construct way
has the great advantage of using the same rep for data and meta-data.
Anyway, my 2 cents ...

-hak

PS/ Also Harold, please give the missing BLD rule syntax for the
     XML-serialized example at the end of the LD document. As well,
     please give the XML pattern for meta-annotation.

-- 
Hassan Aït-Kaci  *  ILOG, Inc. - Product Division R&D
http://koala.ilog.fr/wiki/bin/view/Main/HassanAitKaci

Received on Wednesday, 2 April 2008 01:55:02 UTC