Re: [poe] Constraint specs currently do not cover logic operation on constraints

@riannella Frankly I'm not happy with this "opening up" language as I 
tried to make it clear what each of these attributes stands for, now 
it got ambiguous.

I think we must use a strict divide by "in case of a Constraint 
expression" and "in case of Constraint Relations expression" else any 
reader who is not familiar with the thinking of this group will not be
 able to sort out the difference ... so I propose for 
http://w3c.github.io/poe/model/#constraint: 

* As inserted 3rd paragraph: 
A Constraint can also be used for a Constraint Relations expression to
 combine the results of two Constraints.
* * leftOperand: the left operand of the operation (REQUIRED)
* (below the bullets) 
In case of a Constraint expression the leftOperand identifies the left
 operand of the logic operation for the Constraint, it SHOULD include 
the entity it constrains and how its value for a comparison has to be 
retrieved/generated. The leftOperand MAY be one of the Constraint Left
 Operands defined in the ODRL Vocabulary [vocab-odrl] or from an ODRL 
Profile. In case of a Constraint Relations expression the leftOperand 
MUST refer to a complete Constraint object.
* In case of a Constraint expression the operator identifies the 
logical operation such as “greater than” or “equal to” between the 
left and right operand. In case of a Constraint Relations expression 
the operator identifiers the logic relationship of two constraints 
using operators like 'and', 'or' or 'xor'.
* In case of a Constraint expression the rightOperand identifiers ... 
In case of a Constraint Relations expression the rightOperand MUST 
refer to an complete Constraint object.
* In case of a Constraint expression the dataType indicates ... 
{{appended}} In case of a Constraint Relations expression these 
attributes MUST NOT be used.
* In case of a Constraint expression the status provides .... 
{{appended}} In case of a Constraint Relations expression status MUST 
NOT be used.

And we need a clarification in 
http://w3c.github.io/poe/model/#constraint-relations which constraints
 can be used for Constraint Relations: from the discussions I infer 
using only constraints of the Permission/Prohibition/Duty the 
Constraint Relations is applied to is sufficient, relationships 
"across the boarder" are not needed.

A practical issue I see: How can a receiver of a policy easily parse 
out that the leftOperand and the rightOperand are a constraint? In RDF
 this might be easier than in XML. I guess an implicit selector for 
"is Constraint" or "is Constraint Relations" could be the value of the
 operator: AND, OR or XOR makes it a Constraint Relations.

**Note**: I don't understand the specification of the status attribute
 ... it provides "the current value of leftOperand" - could the value 
of leftOperand change over time??


-- 
GitHub Notification of comment by nitmws
Please view or discuss this issue at 
https://github.com/w3c/poe/issues/94#issuecomment-275052635 using your
 GitHub account

Received on Wednesday, 25 January 2017 08:55:50 UTC