Back to Requirements Document.
Former Requirements are expressed as Duties in ODRL Version 2.
This is the list of issues the ODRL Initiative has considered, when addressing the respective requirement (see above).
IssueID: | State: | Comment: |
issue01 - How to express constraints on requirements? | in discussion | - |
issue02 - How to handle payment requirements (duties) with a late date of payment? | in discussion | - |
Solution approaches:
The ODRLv2 data model includes a new major element called "Duty". The Duty element resembles the Permission element, because it includes Operation and Object, as well as Constraints and Beneficiaries.
Solution approaches:
The default assumption of the ODRLv2 data model is that prior to granting a Permission all Duties have to be fulfilled. However, there may be use cases, where the Permissions may be executed prior to the fulfillment of all Duties. In that case the "relaxed" Duties have to be marked. This allows a minimal form of sequencing contract fulfillment. The following code example shows a Permission that has a payment Duty. Let's assume the date of the access request is 1st Dec. 2004 and the date of payment is 31st Dec. 2004. The "relaxed" attribute in the payment Duty would allow to access the Permission prior to 31st Dec. 2004.
<o-ex20:permission assigner="party99"> <o-ex20:play/> <o-ex20:object>asset01</o-ex20:object> <o-ex20:beneficiary id="party01"/> <o-ex20:hasConstraint id="c01"/> <o-ex20:hasDuty id="d01"/> </o-ex20:permission>
<o-ex20:constraint id="c01"> <o-ex20:count> <o-ex20:max>20</o-ex20:max> </o-ex20:count> </o-ex20:constraint>
<o-ex20:duty id="d01" relaxed="true"> <o-ex20:payment> <o-ex20:amount currency="EUR">0,50</o-ex20:amount> </o-ex20:payment> <o-ex20:hasConstraint id="c02"/> </o-ex20:duty>
<o-ex20:constraint id="c02"> <o-ex20:datetime> <o-ex20:notLaterThan>31-12-2004</o-ex20:notLaterThan> </o-ex20:datetime> </o-ex20:constraint>