Negotiation contract agreement message full

A policy from the Dataspace Protocol examples. The table gives the source and what the policy shows, in the source's words.

SourceWhat it shows
contract-agreement-message-full.jsonA policy inside a ContractAgreementMessage document.

Policy #

{
  "@context": [
    "https://w3id.org/dspace/2025/1/context.jsonld"
  ],
  "@id": "urn:uuid:e8dc8655-44c2-46ef-b701-4cffdc2faa44",
  "@type": "Agreement",
  "target": "urn:uuid:3dd1add4-4d2d-569e-d634-8394a8836d23",
  "profile": "https://test.com/profile",
  "timestamp": "2023-01-01T01:00:00Z",
  "assigner": "http://example.com/Provider",
  "assignee": "http://example.com/Consumer",
  "permission": [
    {
      "action": "use",
      "constraint": [
        {
          "leftOperand": "dateTime",
          "operator": "lteq",
          "rightOperand": "2023-12-31T06:00Z"
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "and": [
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "gold"
            },
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "silver"
            }
          ]
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "or": [
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "gold"
            },
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "silver"
            }
          ]
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "leftOperand": "partner",
          "operator": "eq",
          "rightOperand": "gold"
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "andSequence": [
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "gold"
            },
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "silver"
            }
          ]
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "xone": [
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "gold"
            },
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "silver"
            }
          ]
        }
      ]
    },
    {
      "action": "use",
      "constraint": [
        {
          "or": [
            {
              "and": [
                {
                  "leftOperand": "constraint1",
                  "operator": "eq",
                  "rightOperand": "value1"
                },
                {
                  "leftOperand": "constraint2",
                  "operator": "eq",
                  "rightOperand": "value2"
                }
              ]
            },
            {
              "leftOperand": "partner",
              "operator": "eq",
              "rightOperand": "silver"
            }
          ]
        }
      ]
    }
  ]
}

Reading #

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

Agreement urn:uuid:e8dc8655-44c2-46ef-b701-4cffdc2faa44

An agreement between Provider (assigner) and Consumer (assignee).

  • Agreed on 2023-01-01 at 01:00 UTC.
  • Written to the profile https://test.com/profile.
  1. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • the date and time are on or before 2023-12-31T06:00Z
  2. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • all of the following hold:
      • the partner is equal to "gold"
      • the partner is equal to "silver"
  3. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • at least one of the following holds:
      • the partner is equal to "gold"
      • the partner is equal to "silver"
  4. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • the partner is equal to "gold"
  5. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • the following hold, in this order:
      • the partner is equal to "gold"
      • the partner is equal to "silver"
  6. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • exactly one of the following holds:
      • the partner is equal to "gold"
      • the partner is equal to "silver"
  7. Consumer may use 3dd1add4-4d2d-569e-d634-8394a8836d23, as permitted by the assigner Provider.

    Applies only if:

    • at least one of the following holds:
      • all of the following hold:
        • the constraint1 is equal to "value1"
        • the constraint2 is equal to "value2"
      • the partner is equal to "silver"

The renderer raised no warning for this policy.

Back to the Dataspace Protocol examples or the catalog.