Skip to content

Commit

Permalink
Add remaining use cases
Browse files Browse the repository at this point in the history
  • Loading branch information
acoburn committed Jan 20, 2022
1 parent 51550b0 commit 571bb73
Showing 1 changed file with 71 additions and 3 deletions.
74 changes: 71 additions & 3 deletions notifications-ucr.html
Expand Up @@ -442,6 +442,7 @@ <h3 property="skos:prefLabel">Immediate Notification of Data Changes</h3>
<dd><a href="#functional-requirement-create-events">Create Events</a></dd>
<dd><a href="#functional-requirement-update-events">Update Events</a></dd>
<dd><a href="#functional-requirement-delete-events">Delete Events</a></dd>
<dd><a href="#functional-requirement-access-control">Authorization</a></dd>
</dl>
</div>
</section>
Expand All @@ -462,6 +463,7 @@ <h3 property="skos:prefLabel">Frequency of Notifications</h3>
<dd><a href="#functional-requirement-update-events">Update Events</a></dd>
<dd><a href="#functional-requirement-delete-events">Delete Events</a></dd>
<dd><a href="#functional-requirement-event-filtering">Event Filtering</a></dd>
<dd><a href="#functional-requirement-access-control">Authorization</a></dd>
</dl>
</div>
</section>
Expand All @@ -480,6 +482,44 @@ <h3 property="skos:prefLabel">Filtered Notifications</h3>
<dd><a href="#functional-requirement-update-events">Update Events</a></dd>
<dd><a href="#functional-requirement-delete-events">Delete Events</a></dd>
<dd><a href="#functional-requirement-event-filtering">Event Filtering</a></dd>
<dd><a href="#functional-requirement-access-control">Authorization</a></dd>
</dl>
</div>
</section>

<section id="use-case-time-bound-subscriptions" inlist="" rel="skos:member" resource="#use-case-time-bound-subscriptions" typeof="skos:Concept">
<h3 property="skos:prefLabel">Time-bound Subscriptions</h3>
<div datatype="rdf:HTML" property="skos:definition">
<p>
Occasionally, a client only needs a subscription to be in effect for a limited
period of time. While a client may easily close a WebSocket itself, subscriptions
for other, more asynchronous forms of notifications, such as LDN alerts or WebHook
operations, may be more difficult to terminate.
</p>
<dl id="requirements-time-bound-subscriptions" rel="rdfs:seeAlso">
<dt>Requirements</dt>
<dd><a href="#functional-requirement-create-events">Create Events</a></dd>
<dd><a href="#functional-requirement-update-events">Update Events</a></dd>
<dd><a href="#functional-requirement-delete-events">Delete Events</a></dd>
<dd><a href="#functional-requirement-access-control">Authorization</a></dd>
</dl>
</div>
</section>

<section id="use-case-lost-updates" inlist="" rel="skos:member" resource="#use-case-lost-updates" typeof="skos:Concept">
<h3 property="skos:prefLabel">Lost Update Notifications</h3>
<div datatype="rdf:HTML" property="skos:definition">
<p>
For WebSockets and subscriptions that rely on an active, live connection to
a notification server, the subscription channel needs to make sure that clients
do not miss notifications in the event of a dropped connection.
</p>
<dl id="requirements-time-bound-subscriptions" rel="rdfs:seeAlso">
<dt>Requirements</dt>
<dd><a href="#functional-requirement-create-events">Create Events</a></dd>
<dd><a href="#functional-requirement-update-events">Update Events</a></dd>
<dd><a href="#functional-requirement-delete-events">Delete Events</a></dd>
<dd><a href="#functional-requirement-access-control">Authorization</a></dd>
</dl>
</div>
</section>
Expand Down Expand Up @@ -520,15 +560,16 @@ <h2 property="schema:name">Requirements</h2>
<thead>
<tr>
<th rowspan="2">Use Case</th>
<th colspan="5">Functional Requirements</th>
<th colspan="6">Functional Requirements</th>
<th colspan="1">Non-Functional Requirements</th>
</tr>
<tr>
<td><a href="#functional-requirement-create-events">F1</a></td>
<td><a href="#functional-requirement-update-events">F2</a></td>
<td><a href="#functional-requirement-delete-events">F3</a></td>
<td><a href="#functional-requirement-event-filtering">F4</a></td>
<td><a href="#functional-requirement-discovery">F5</a></td>
<td><a href="#functional-requirement-access-control">F5</a></td>
<td><a href="#functional-requirement-discovery">F6</a></td>
<td><a href="#non-functional-requirement-baz">NF1</a></td>
</tr>
</thead>
Expand All @@ -539,6 +580,7 @@ <h2 property="schema:name">Requirements</h2>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
Expand All @@ -548,6 +590,7 @@ <h2 property="schema:name">Requirements</h2>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
Expand All @@ -557,6 +600,27 @@ <h2 property="schema:name">Requirements</h2>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><a href="#use-case-time-bound-subscriptions">Time-Bound Subscriptions</a></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><a href="#use-case-lost-updates">Lost Update Notifications</a></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
Expand All @@ -566,6 +630,7 @@ <h2 property="schema:name">Requirements</h2>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
Expand All @@ -592,6 +657,7 @@ <h3 property="schema:name skos:prefLabel">Functional Requirements</h3>
<span resource="#functional-requirement-update-events"></span>
<span resource="#functional-requirement-delete-events"></span>
<span resource="#functional-requirement-event-filtering"></span>
<span resource="#functional-requirement-access-control"></span>
<span resource="#functional-requirement-discovery"></span>
</span>

Expand All @@ -604,7 +670,9 @@ <h3 property="schema:name skos:prefLabel">Functional Requirements</h3>
<dd about="#functional-requirement-delete-events" property="skos:definition">A subscribed entity is alerted when an existing resource is deleted.</dd>
<dt about="#functional-requirement-event-filtering" property="skos:definition" typeof="skos:Concept">F4. <dfn id="functional-requirement-event-filtering">Event Filtering</dfn></dt>
<dd about="#functional-requirement-event-filtering" property="skos:definition">A subscribed entity can request a subset of all notifications.</dd>
<dt about="#functional-requirement-discovery" property="skos:definition" typeof="skos:Concept">F5. <dfn id="functional-requirement-discovery">Capability Discovery</dfn></dt>
<dt about="#functional-requirement-access-control" property="skos:definition" typeof="skos:Concept">F5. <dfn id="functional-requirement-access-control">Authorization</dfn></dt>
<dd about="#functional-requirement-access-control" property="skos:definition">Authorization is enforced on all subscriptions.</dd>
<dt about="#functional-requirement-discovery" property="skos:definition" typeof="skos:Concept">F6. <dfn id="functional-requirement-discovery">Capability Discovery</dfn></dt>
<dd about="#functional-requirement-discovery" property="skos:definition">A client is able to discover the notification capabilities of a Solid Storage.</dd>
</dl>
</div>
Expand Down

0 comments on commit 571bb73

Please sign in to comment.