Duty mode deny consequence resolves permission 01

A policy from the Compliance corpus. The table gives the source and what the policy shows, in the source's words.

SourceWhat it shows
duty-mode-deny-consequence-resolves-permission-01.ttldutyMode=Deny: a permission's unconstrained odrl:duty is gated Active once its own odrl:consequence resolves the chain, matching decide()'s coarse Allow

Policy #

{
  "@context": [
    "http://www.w3.org/ns/odrl.jsonld",
    {
      "case": "https://ds-labs-org.github.io/ds-odrl-compliance-rdf/cases/duty-mode-deny-consequence-resolves-permission-01#",
      "dsc": "https://ds-labs-org.github.io/ds-odrl-compliance-rdf/ns#",
      "dpv": "https://w3id.org/dpv#",
      "foaf": "http://xmlns.com/foaf/0.1/",
      "vcard": "http://www.w3.org/2006/vcard/ns#"
    }
  ],
  "@graph": [
    {
      "@type": "Set",
      "uid": "case:policy-a",
      "assigner": "did:web:provider.example",
      "permission": [
        {
          "uid": "case:perm-read",
          "target": "case:asset-1",
          "action": "read",
          "duty": [
            {
              "uid": "case:duty-notify",
              "action": "notify",
              "consequence": [
                {
                  "uid": "case:duty-compensate",
                  "action": "compensate",
                  "constraint": [
                    {
                      "leftOperand": {
                        "@id": "case:claim-compensated",
                        "@type": "dsc:ClaimKey",
                        "dsc:key": "compensated"
                      },
                      "operator": "eq",
                      "rightOperand": "true"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}

Reading #

The sentences OdrlProse writes for this policy, without a profile.

Policy set case:policy-a

A set of rules from did:web:provider.example (assigner).

  1. Anyone may read asset-1, as permitted by the assigner did:web:provider.example.

    Duties to fulfil before this permission can be exercised:

    • The assignee must notify, as required by the assigner did:web:provider.example.

      Consequences if this duty is not fulfilled:

      • The assignee must compensate, as required by the assigner did:web:provider.example.

        Applies only if:

        • the claim compensated is equal to "true"

The renderer raised no warning for this policy.

Back to the Compliance corpus or the catalog.