Multiple Actions/Parties/Assets - inheritance

Following up on last message….what happens with Policy Inheritance?

If we clarify Inheritance to primarily mean “inclusion” (similar to xsd:include for xml schema people ;-)

Consider; Example 1 (parent):
 
    "type": "odrl:Agreement",
    "uid": "http://example.com/policy:3333",
    "target": "http://example.com/asset:3333",
    "assigner": "http://example.com/boss:0001",
    "permission": [{
        "action": "odrl:use"
    }]

and the (child) Policy that will inherit from it:

    "type": "odrl:Agreement",
    "uid": "http://example.com/policy:444",
    "inheritFrom": "http://example.com/policy:3333",
    "target": "http://example.com/asset:5555",
    "permission": [{
        "assignee": "http://example.com/guest:0001",
        "action": "odrl:display"
    }],
    "permission": [{
        "assignee": "http://example.com/guest:0002",
        "action": "odrl:print"
    }]

After the inheritance, the Policy will look like:

   "type": "odrl:Agreement",
    "uid": "http://example.com/policy:444",
    "target": "http://example.com/asset:5555",
    "target": "http://example.com/asset:3333",
    "assigner": "http://example.com/boss:0001",
    "permission": [{
        "assignee": "http://example.com/guest:0001",
        "action": "odrl:display"
    }],
    "permission": [{
        "assignee": "http://example.com/guest:0002",
        "action": "odrl:print"
    }],
    "permission": [{
        "action": "odrl:use"
    }]


Then you simply expand it out:

   "type": "odrl:Agreement",
    "uid": "http://example.com/policy:444",
    "permission": [{
       "target": "http://example.com/asset:5555",
       "target": "http://example.com/asset:3333",
       "assigner": "http://example.com/boss:0001",
        "assignee": "http://example.com/guest:0001",
        "action": "odrl:display"
    }],
    "permission": [{
       "target": "http://example.com/asset:5555",
       "target": "http://example.com/asset:3333",
        "assigner": "http://example.com/boss:0001",
        "assignee": "http://example.com/guest:0002",
        "action": "odrl:print"
    }],
    "permission": [{
        "target": "http://example.com/asset:5555",
        "target": "http://example.com/asset:3333",
        "assigner": "http://example.com/boss:0001",
        "action": "odrl:use"
    }]
    


Renato Iannella, Monegraph
Co-Chair, W3C Permissions & Obligations Expression (POE) Working Group

Received on Wednesday, 11 January 2017 04:51:42 UTC