[poe] What exactly is stated by Non-/Active?

nitmws has just created a new issue for https://github.com/w3c/poe:

== What exactly is stated by Non-/Active? ==
Having a look at @riannella 's comment https://github.com/w3c/poe/issues/226#issuecomment-327057346 and the updated [2.6.8 Rule Processing](https://w3c.github.io/poe/model/#rule-process) and recalling the discussions about the term Active and having a look at Ben's [Evaluator Truth Tables](https://www.w3.org/2016/poe/wiki/Evaluator)  and also on my (internal) attempts to update this Rule Processing section ...
I have the strong feeling that **we have different understandings of the state Active / Non-Active.**
And for a final agreement on 2.6.8 on 11 September it would be great to have also an agreement on the semantics of this Non-/Active state.

My experience and view on that is:

**First prerequisites:** 
A. I think most agree that the evaluation of a Rule is split up into segments:
a. are the constraints of a Rule and refinements of its action Satisfied
b. is the action of a Prohibition or of a Duty taken
c. are duties of a Permission Fulfilled, are remedies of a Prohibition Fulfilled, are consequences of a duty-/obligation-Duty Fulfilled.
The results of the evaluation of this segments may be taken into account for the state of the Rule as a whole - more below

B. It looks like agreed that ODRL has "top level" or "root" Rules (= Rule sub-classes referenced by properties at the Policy-level) and "Sub-"Rules (= in fact Duties referenced by properties inside a (different) Rule). And I see an agreement that the evaluation of Duty instances has to be different if it resides at the Top or the Sub level.

**Options for the semantics of the state Active:**
1. it is set only after evaluating all applicable evaluation segments (see A.a - A.c above), the impact of results of the segments on setting the state is defined in the Rule Processing. 
In other words: the state Non-/Active represents the result of a full evaluation of a Rule.
2. it is set during the evaluation of all applicable evaluation segments and states if the evaluation can be continued (state = Active) or not (state = Non-Active).
In other words: the state Active tells "the Rule is ready for further evaluation" (the open issue is: what is the message if all segments have been evaluated already, no further evaluation is pending?)
This option requires for setting a final outcome of the Rule to check: is the current state of the Rule "Active" or "Non-Active" and have all applicable evaluation segments been evaluated.

**My comment on the options:**
* the ODRL IM MUST specify how to generate/evaluate final states of the Top Level Rules: the assignees of a Rule want to know if they have the final permission for an action, if they treat an asset in a way complying with a prohibition, what needs to be done to comply with an obligation. The evaluation of segments is "internal IT stuff" for the users of real assets.
(Because of the importance of this need I was leaning towards option 1 in my phrasing of Rule Processing drafts so far.)
* All the considerations of states while evaluating a Rule as a whole are important for creating a final outcome but should not override how the final state is generated/evaluated.
* If ODRL uses option 2 above the Rules Processing must define how to set and deal with the state Active but also how to generate/evaluation the final state of the Rule as a whole.


Please view or discuss this issue at https://github.com/w3c/poe/issues/245 using your GitHub account

Received on Tuesday, 5 September 2017 09:59:28 UTC