BLD vs PRD (was: Re: [RIF-APS] Rules Sign)

Michael Kifer wrote:
> RIF is not about PRD or BLD, but about rule exchange in general.
> It is supposed to provide a framework for exchanging rules through different
> dialects. The dialects are supposed to share as much as possible in order for
> the framework to be coherent.

My understanding is that RIF is chartered to specify a common XML serialisation for a variety of rule languages, in order to allow, indeed, the interchange of rules between those languages.

This broad objective translated into the specification of several dialects because of the objvious fact that there are different families of rule languages and that it did not make sense to have a normative XML serialisation format that would cover different families at the same time (because the set of the rules that can be expressed in the languages in one family is too different from the set of the rules that can be expressed in the languages in another family).

So that RIF is chartered to specify a common XML serialisation for the (possibly small) set of the rules that can be equally (and usefully?) expressed in all the various families of rule languages (the Core) and a family of specialised XML serialisations (the dialects), each being common to the languages in one particular family of rule languages.

My understanding is that each of the dialects is meant to be useful to interchange rules between languages of the same family. The very reason why we have a BLD and a PRD is because a large part of what can be expressed using production rule langues is of a procedural, rather than a logical, nature.

So leaving my chair's hat aside for a moment, I do not quite understand why PRD would be bound to a logical approach for what is specific to the world of production rules: PRD is bound to the syntax of BLD where their semantics agree; but PRD can do whatever is practical and useful to the PR crowd for whatever BLD cannot express.

In the same way, if a future extension of BLD needs to cover something that is in PRD and not in BLD, that future dialect will be bound to reuse the syntax of PRD (even if it might have been done differently, had it been done prior to or independently of PRD).

Which is why we must be careful, when designing PRD, that our syntax may need be reused in a non PR context (not as we did with BLD, when we did not take that into account; but BLD was our first try).

Putting my chair's hat back on my head, and to answer Patrick's questions:

Patrick Albert wrote:
> Is it a decision of the RIF group that:
> 1/ BLD and PRD have to share syntax and semantic (especially in the case
> of the mapping rules and objects) 
> 2/ BLD is first class and PRD is the follower.

The answer to question 1 is: yes, it is a decision of the RIF group that PRD is committed to reuse BLD's syntax wherever they agree on the semantics (that is, wherever the semantics on which the PR engines agree gives the same results as the semantics of BLD, in terms of inference). Notice that, since only the XML syntax is normative, there is no WG decision (that I am aware of) that the concrete PS (the EBNF) should be the same for BLD and PRD (</Chair><Editor>and after the first round of feedback I got on the first WD of PRD, I believe more than ever that using the BLD EBNF in PRD is a very bad idea. Yes, that's because they have different target audiences </Editor><Chair>).

The answer to question 2 is: no, there is no such WG decision. But the syntax of BLD was mostly complete before we started designing PRD. As a consequence, the 'yes' to question 1 commits us to reuse that syntax wherever BLD and PRD agree on the semantics (which might wive the impression, ath thi sstage, that BLD has some kind of favoured status; and, of course, the current making of the WG explains why their is more interest in logic languages than in PR ones :-) 



Received on Tuesday, 9 September 2008 14:18:34 UTC