W3C home > Mailing lists > Public > public-rif-wg@w3.org > October 2008

Re: [PRD] PRD TF telecon Tuesday 14 October

From: Christian de Sainte Marie <csma@ilog.fr>
Date: Tue, 14 Oct 2008 16:36:34 +0200
Message-ID: <48F4AE72.60108@ilog.fr>
To: Hassan Ait-Kaci <hak@ilog.com>
CC: RIF WG <public-rif-wg@w3.org>

Hassan Ait-Kaci wrote:
> 
> Here is my take on the frame and aggregates issues as they are related):
> 
> (1) Frames as they are defined and given semantics is BLD are useless for
>     most OO models such as those used in Production Systems where objects
>     have variable (field) arity and each field is mono-valued (BLD's frames
>     have multi-valued fields). The designers of BLD (MK & HB) have defined
>     a collection semantics based on aggregating mulitple values of a 
> frame's
>     fields using a set constructor. This is problematic as this introduces
>     a confusion when a field's value is already a set.
> 
>     A safe, simple, and more general way that would solve this problem is
>     not to build the set-collection semantics into BLD's semantics of 
> frames
>     with multiple field values, but rather to parametrize BLD's semantics
>     with a monoid collector (that can be set, bag, list, +, *, max, ...)
>     that is used to bundle and unbundle frame field values. In this way,
>     all we have to do when exchanging BLD -> PRD or PRD -> BLD, the 
> (normative)
>     RIF XML format, is to specifiy a monoid collector per field (which 
> could
>     default to set if left unspecified). Then, all that needs to be done is
>     to bundle/unbundle objects represented as frames, is declare what 
> monoid
>     (if any) is associated to a frame's field. This is simple to specify in
>     the RIF XML format that we are defining to be normative.

The question seems to be, really, if we can expect that the author of a BLD compatible rule set (program) always knows (at authoring time) whether a given frame's slot is, essentially, multi- or single-valued.

If yes, we can have different syntaxes for the two cases, and your proposed solution can be implemented to facilitate the BLD<->PRD interchange (although some questions remain, since a collection of values to simulate a multi-valued slot would still be different from a single-valued slot where the value is a collection).

But is it the case? And what, if not?

Cheers,

Christian
Received on Tuesday, 14 October 2008 14:37:24 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:55 GMT