-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Permissions when a Duty is triggered #95
Comments
in https://www.w3.org/TR/odrl-model/#duty it says:
so at any point in time and given the current state of the world, it's up to the ODRL implementations to figure out if:
|
@simonstey Yes, that is the interpretation of how you consider/evaluate a duty "fulfilled". As I explain: the same Duty can be a odrl:duty / odrl:remedy or odrl:consequence for other rules, which means that "fulfilment" is a state that exists in the edge "rule-[fulfilled]->duty". For example, you can have 2 permissions for 2 assets that point to the same duty of €5. You need to fulfil the duty individually, once for each permission rule (it is not BOGOF). The outcome of evaluating the duty ("fulfilment state") belongs to the relationship. |
and I'm not saying that it shouldn't.. only that the reason ODRL isn't providing means for "encoding" this as triples is that it was meant to be always evaluated on the fly. |
I know most of ODRL is historically for the context of media, but we're moving to the world of micro-transactions / embeddings / multi-attributions / recurring-engagement. Apparently, "very fast". For on-the-fly evaluation, I've done it. I've implemented two behaviours:
I think the A) and B) should be normative (I think this is entering the realm of "protocol" above just "semantics"). |
also there is:
|
If several Permissions refer to the same Duty (via its uid property), then the Duty only has to be fulfilled once. That would make an unmanageable explosion of Duties if they are all "€5 per asset". Even further, to simplify the work of a product manager, and as prices have a separate lifecycle from Policies and Assets, my duties have the preference to be specified as:
Otherwise, you have to release a policy every time you change a price and if prices are dynamic on an agreement, you have to reissue all agreements. |
Part A
How to represent "asset X can be played 5 times every time duty Y is fulfilled"
Permission A - has a counter (start 0) constraint
count lt 5
with a "duty" triggered pointing at Duty BDuty B
count eventually reaches 5
Duty B has no mechanism to indicate "reset permission A"
Part B
The text was updated successfully, but these errors were encountered: