[poe] Issue: Constraint specs currently do not cover logic operation on constraints marked as question

nitmws has just labeled an issue for https://github.com/w3c/poe as 
"question":

== Constraint specs currently do not cover logic operation on 
constraints ==
This is about what was discussed as Extended Relations topic.

The current specifications regarding Constraints read 
(http://w3c.github.io/poe/model/#constraint):
- _Constraint_: Constraints express a Rule for comparing two operands 
by one operator. If the two operands match the result of the 
Constraint is true.
- _leftOperand_: 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."
- _rightOperand_: The rightOperand represents the literal value (such 
as "10" or "http://example.com/c100") and rightOperandReference 
represents a URI that MUST be dereferenced to obtain the actual value.
 Only one of these MUST appear in the Constraint.
- _operator_: The operator identifies the comparative operation such 
as “greater than” or “equal to”. 

That does match well the design of the Extended Relations: each the 
leftOperand and the rightOperand of a Constraint are a constraint and 
they are compared by a login operator (AND, OR, XOR):
- leftOperand: a processed constraint only delivers a boolean value of
 true or false - no definition of an entity it constrains.
- where to put the constraint being the right operand: in rightOperand
 (no, its not a literal value) or in rightOperandReference?
- AND, OR and XOR operators do not match the specification


How to solve that: 
- opening up the specification to two options using an "in case of 
..." wording:  one covering the "old" constraint and another one this 
new logic combination of two constraints?
- OR to create a new class and a new property of Permission (quick 
outline):
-- new class CombinedConstraints: Parent = owl:Thing, Properties: 
constraint1, constraint2, operator
-- new property hasCombinedConstraints: Domain = Permission, Range = 
CombinedConstraints



See https://github.com/w3c/poe/issues/94

Received on Tuesday, 24 January 2017 11:07:45 UTC