- From: Renato Iannella <renato.iannella@monegraph.com>
- Date: Tue, 8 Nov 2016 23:39:40 +1000
- To: W3C POE WG <public-poe-wg@w3.org>
- Message-Id: <0E258881-B919-4B60-962A-20423E8FF8DA@monegraph.com>
I think the general issue is that we have associated the Constraint to the Perm/Prohib/Duty, when we should have associated it directly to the Action/Name.
Michael’s example show that with the “odrl:constraintsubject” having to explicitly refer to the odrl:action.
And this gets worse when we introduce support for Constraints on Asset’s and Parties.
*IF* we move the constraint directly as a property of the Action/Name, then we could express:
odrl:permission [
a odrl:Permission ;
odrl:target <http://example.com/music:4545> ;
odrl:assigner <http://example.com/sony:10> ;
odrl:action [
a odrl:Action ;
rdf:value odrl:copy ;
odrl:constraint [
a odrl:Constraint ;
odrl:count 1 ;
odrl:operator odrl:lteq
]
]
] .
This makes the constraint clearly associated with the odrl:copy action (and all constraints in that Action will apply to the same).
Then, when we add a Constraint to the Target, the subject is clear:
odrl:target [
a odrl:Asset ;
rdf:value <http://example.com/music:4545> ;
odrl:constraint [
a odrl:Constraint ;
spotify:artist <http://music.net/people:prince> ;
odrl:operator odrl:eq
]
]
And the same for Party:
odrl:assignee [
a odrl:Party ;
rdf:value <http://example.com/billie> ;
odrl:constraint [
a odrl:Constraint ;
spotify:age 18 ;
odrl:operator odrl:gteq
]
]
Then we have our favourite example…the constraint on a constraint.
The constraint “end of the football match” is further constrained by a “30 min time period”:
odrl:action [
a odrl:Action ;
rdf:value odrl:distribute ;
odrl:constraint [
a odrl:Constraint ;
odrl:event <http://premier-league.com/end-of-match ;
odrl:operator odrl:eq ;
odrl:constraint [
a odrl:Constraint ;
odrl:dateTime "P30M" ;
odrl:operator odrl:gteq ;
]
]
] .
Renato
ps: i’ve used rdf:value here but we could define our own predicate
Received on Tuesday, 8 November 2016 13:40:18 UTC