[RIFRAF] Coverage requirements and the current RIFRAF

Hi,

I tried to determine whether the requirements we moved to RIFRAF during 
the F2F3  
(http://www.w3.org/2005/rules/wg/wiki/UCR/Critical_Factors_Analysis/Exchange_of_Rules) 
are covered by the current version of RIFRAF 
(http://www.w3.org/TR/2006/WD-rif-ucr-20060710/#Coverage). Since some of 
the requirements are quite general, I hope that their champions can 
correct my classification or refine it if needed. This email lists the 
requirements moved to RIFRAF together with their place in the RIFRAF 
structure or comments in case they are missing in RIFRAF.

Regarding the current version of RIFRAF, a general comment on it refers 
to the granularity of the discriminators under the different classes of 
discriminators...for example, while Syn is quite detailed, Sem is not. 
Moreover, I can't really see why Turing complete vs. not Turing-complete 
is a semantic discriminator.

Regards,
Paula

---------------------------------------------------------------

The requirements moved to RIFRAF during the F2F3 refer to:

i. Kinds of rules
--  RIF should cover deductive rules. (Phase 1)
 >> Missing in RIFRAF.

--  RIF should cover normative rules. (Possibly part in Phase 1, but 
mostly Phase 2)
 >> Missing in RIFRAF.

--  RIF should cover production rules. (Phase 2)
 >> Missing in RIFRAF.

--  RIF should cover ECA rules. (Phase 2)
 >> Missing in RIFRAF.
 >> Comments on the above given requirements: some of the ingredients 
for these rules are of course covered by the current RIFRAF, but some 
are not (e.g. Implicit  vs. explicit event query specification 
(production rules vs. ECA rules) or the kind of actions in the action 
part of production and ECA rules). In my opinion, the different kinds of 
rules (possibly with appropriate sub-discriminators e.g. for events and 
actions) is a useful discriminator for rule languages and is important 
for their interchange.

--  RIF should cover FOL. (Phase TBD)
 >> Not entirely covered by RIFRAF. Perhaps it would be good to 
explicitly list negation in RIFRAF.

ii. Rule features:

--  RIF should support RDF deduction rules. (Part in Phase 1, part in 
Phase 2)
 >> Missing in RIFRAF.

--   RIF should support frame-based syntax. (Phase 1 per charter, at 
least for slots)
 >> Slotted arguments covered by RIFRAF: (5.1.1) Syn: (5) Slotted 
(Keyed, Role-Named) vs. Positional Arguments

--   RIF should support a restricted form of equality. (Phase TBD)
 >> Covered to some extent by RIFRAF: (5.1.1) Syn: (1.1) Restricted vs. 
Unrestricted Use of Logical Variables (Single-occurrence variables (no 
implicit variable equality) vs. Multiple-occurrence variables (implicit 
variable equality; if an equality predicate is available, this can be 
made explicit via tests in the body; e.g., using an 'equal' predicate, 
the multiple-occurrence p(?x,?y,?x) :- q(?y) can be transformed into the 
single-occurrence p(?x1,?y,?x2) :- equal(?x1,?x2), q(?y)))

--   RIF should support priorities and preferences as meta language 
features. (Phase 2)
 >> RIFRAF: (5.1.2) SeS: (9) Priority
 >> Comment: preferences not covered in RIFRAF

--   RIF should support meta rules for meta reasoning. (Phase 2)
 >> Missing in RIFRAF.

--   RIF should be able to accept relational tables/views as data. (Phase 2)
 >> Missing in RIFRAF.
 >> Comment: RIFRAF doesn't cover the kinds of data the rules are 
working on.

--   RIF should be able to express SBVR business rules. (Phase 2)
 >> Missing in RIFRAF as it is, but surely covered (to some extent) by 
the RIFRAF items. I think the best way to determine the coverage of this 
requirement is to split it into a set of detailed requirements and then 
look for them in RIFRAF.

--   RIF should support LP semantics with negation as failure and strong 
negation (a la DLV). (Phase 2)
 >> Missing in RIFRAF.

--   RIF should support module construct for scoped positive queries and 
scoped negation as failure queries. (Phase 2)
 >> RIFRAF: (5.1.1) Syn: (4) Explicit vs. Implicit Rule Scope

--   RIF should support variables that are typed. (Phase 2)
 >> Missing in RIFRAF.

--   RIF should support rule sets that are combinations of different 
kinds of rules (e.g., a mixture of deductive and normative rules). (Phase 2)
 >> Missing in RIFRAF.

--   RIF should support higher order syntax. (Phase 2)
 >> RIFRAF: (5.1.1) Syn: (2) Predicate Variables Permitted vs. Not 
Permitted
 >> Comment: the requirement is more general than the RIFRAF item, whose 
description adds just as an explanation a reference to a more 
generalized version of it (not just for predicates but also functions 
and atom positions).

--   RIF should support modal operators. (Phase 2)
----  Obligation
----  Permission
----  Necessity
----  Possibility
 >> RIFRAF: (5.1.3) Sem: (4) Modality allowed or not allowed (beyond FOL)

Received on Tuesday, 18 July 2006 09:43:00 UTC