Status: Draft v0.1.0 — This section is informative.
Yuki subscribes to the standard plan of an online media service. The
Source of the Right is the subscription agreement concluded under the
provider’s terms of service — a Source of kind contract, referenced through
an Agreement Reference of kind terms whose parties are Yuki and the
provider. The provider is the Authority in the model’s sense: a
contracting party with granting power, acting as grantor and as the issuer
of Eligibility Responses about the subscription’s state. The Object is
the service plan, and the provider’s subscription management system is the
Evidence Source for the subscription’s state.
The Right — the subscriber’s entitlement under the agreement — carries
two Actions. use-service has two Eligibilities, one requirement
each: the subscription is active (not cancelled, expired, or suspended), and
payment for the current billing period has been made. cancel is also an
Action of the same Right — terminating the relationship is itself something
the Subject is entitled to do under the terms — with its own Eligibilities.
Each Eligibility is answered by at most one Boolean Eligibility Response
issued by the provider; how the provider checks its records is outside
Rights Layer.
This use case deliberately shows the negative path. In the example, Yuki
requests use of the service; the provider answers the subscription-active
Eligibility true but the payment-current Eligibility false — a missed
payment. Because one Response is false, no Decision is established: the
expression contains no Decision entity and no Exercise entity for
use-service — the model has no negative Decision and no third value, so
there is simply nothing of that kind to record. The Right itself continues to exist
unchanged; when payment is made, a fresh true Response can be issued and a
Decision can then be established. That is exactly the distinction the model
draws between existence and exercisability. The Eligibilities of cancel
are left unanswered, so no Decision exists for that Action either.
| Rights Layer concept | Domain instance |
|---|---|
| Subject | Yuki, the subscriber |
| Object | The subscribed service plan |
| Right | The subscriber’s right to use the service under the agreement |
| Source | Contract: subscription agreement under the terms of service (Agreement Reference, kind terms) |
| Authority | The service provider (contracting party with granting power; grantor and Response issuer) |
| Action | use-service; cancel |
Eligibility (use-service) |
Two Eligibilities, one requirement each: subscription active; payment current for the billing period |
Eligibility (cancel) |
Two Eligibilities: subscription active; cancellation requested in the manner set out in the terms |
| Eligibility Response (1:1) | Subscription active: true by the provider; payment current: false by the provider. How the provider evaluates its records is outside the layer. |
| Evidence / Evidence Source | Subscription record from the provider’s subscription management system, referenced by the true Response |
| Decision | Not established for use-service: one Response is false, so no Decision entity exists (there is no negative Decision) |
| Exercise / Exercise Event | None for use-service — an Exercise presupposes an established Decision; the request remains recorded as an ExerciseRequested Event |
| Event | RightGranted at subscription start; ExerciseRequested; two EligibilityResponseIssued Events, one carrying value: false |
flowchart TD
S["Source<br/>Contract: subscription agreement<br/>under terms of service"] --> R["Right<br/>Subscriber's right to use<br/>the service (held by Yuki)"]
R --> A1["Action<br/>use-service"]
R --> A2["Action<br/>cancel"]
A1 --> EL1["Eligibility<br/>subscription active"]
A1 --> EL2["Eligibility<br/>payment current"]
A2 --> EL3["Eligibilities<br/>(unanswered: no Decision)"]
EL1 --> ER1["Response: true<br/>issuer: the provider"]
EL2 --> ER2["Response: false<br/>issuer: the provider"]
ER1 --> D["Decision<br/>NOT established:<br/>one Response is false"]
ER2 --> D
D -.->|"no Decision entity,<br/>no Exercise"| EX["(no Exercise)"]
use-service records a
fact about Responses; how the provider acts on it (blocking access,
dunning, grace periods) is an implementation and institutional concern.Machine-readable expression: subscription.json