From 74d66df4ae149eaa783d8ed9c27c4492c2b404f2 Mon Sep 17 00:00:00 2001 From: Sarven Capadisli Date: Thu, 25 Aug 2022 14:43:31 +0200 Subject: [PATCH 1/2] Add notification-channel-discovery notification-channel-conformance --- protocol.html | 96 ++++++++++++++++++++++++--------------------------- 1 file changed, 45 insertions(+), 51 deletions(-) diff --git a/protocol.html b/protocol.html index 735b1b7..3f7c63f 100644 --- a/protocol.html +++ b/protocol.html @@ -410,22 +410,22 @@

Terminology

This specification defines the following terms. These terms are referenced throughout this specification.

- +
- Notification Channel + notification channel
- A Notification Channel is an abstract thing which is identified by a URI and whose properties describe the available communication interface and features. + A notification channel is an abstract thing which is identified by a URI and whose properties describe the available communication interface and features.
-
- Notification Subscription Metadata Resource +
+ notification channel resource
-
+
An RDF document [RDF11-CONCEPTS] - that includes metadata about the capabilities of a notification channel. + that includes information about the capabilities of a notification channel.
subscription resource
@@ -519,46 +519,51 @@

Discovery

subscription
subscription predicate denotes a subscription resource associated with a notification channel (Subscription).
type
-
type predicate (rdf:type) denotes the subscription type (Subscription).
+
type predicate (rdf:type) denotes the notification channel type (Notification Channel).
-
-

Issue: Notification Subscription Metadata Discovery

+
+

Notification Channel Discovery

-

The specific mechanism defining the discovery of the Notification Subscription Metadata Resource is under consideration: issues/58.

+ + + + +

+ + + Servers + MUST accept requests on the Notification Channel Resource when the value of the Accept header indicates a preferred representation in application/ld+json [JSON-LD11]. + + +

-
+ -

- - - The server - MUST be capable of serializing the - Notification Subscription Metadata Resource as - Turtle [TURTLE] - or JSON-LD [JSON-LD11]. - - -

+
+

Notification Channel Conformance

+
-

Turtle Serialization

+

A Notification Channel has the following properties:

-

- - When serializing the Notification Subscription Metadata Resource as Turtle, - every notify:notificationChannel definition - MUST - materialize an rdf:type triple, indicating the channel type. - -

+
    +
  • At least one notify:notificationChannel property whose object describes a notification channel.
  • +
  • At least one rdf:type property whose object is notify:NotificationChannel.
  • +
  • Zero or more notify:feature property values (Notification Features).
  • +
  • Zero or one notify:subscription property value (Notification Subscription).
  • +
+
+
+ +

Servers MUST include the @context field as an array containing the value https://www.w3.org/ns/solid/notification/v1 in the JSON-LD representation of a Notification Channel Resource.

- A sample representation of this resource might include the following: + Sample representations of the Notification Channel Resource might include the following:

- Example: Representation of a Notification Subscription Metadata Resource. + Example: Representation of a Notification Channel Resource.

Content-Type: text/turtle
@@ -574,25 +579,12 @@ 

Turtle Serialization

notify:feature notify:state, notify:rate, notify:expiration .
-
TURTLE serialization of a Notification Subscription Metadata Resource
+
Turtle serialization of a resource including notification channel information.
-

JSON-LD Serialization

- -

- - When serializing the Notification Subscription Metadata Resource as JSON-LD, - the @contextfield MUST - be an array containing the value https://www.w3.org/ns/solid/notification/v1. - In addition, for every notificationChannel definition, - the Subscription Metadata Resource MUST - materialize a type field, indicating the channel type. - -

- -
+

- Example: Representation of a Notification Subscription Metadata Resource. + Example: Representation of a Notification Channel Resource.

Content-Type: application/ld+json
@@ -609,7 +601,7 @@ 

JSON-LD Serialization

}] }
-
JSON-LD serialization of a Notification Subscription Metadata Resource
+
JSON-LD serialization of resource including notification channel information.
@@ -983,6 +975,8 @@

Normative References

Linked Data Notifications. Sarven Capadisli; Amy Guy. W3C. 2 May 2017. W3C Recommendation. URL: https://www.w3.org/TR/ldn/
[OAUTH-POP-KEY-DISTRIBUTION]
OAuth 2.0 Proof-of-Possession: Authorization Server to Client Key Distribution. J. Bradley; P. Hunt; M. Jones; H. Tschofenig. IETF. 5 March 2015. Internet Draft (work in progress). URL: https://datatracker.ietf.org/doc/draft-ietf-oauth-pop-key-distribution/
+
[POWDER-DR]
+
Protocol for Web Description Resources (POWDER): Description Resources. Phil Archer; Kevin Smith; Andrea Perego. W3C. 1 September 2009. W3C Recommendation. URL: https://www.w3.org/TR/powder-dr/
[RDF-SCHEMA]
RDF Schema 1.1. Dan Brickley; Ramanathan Guha. W3C. 25 February 2014. W3C Recommendation. URL: https://www.w3.org/TR/rdf-schema/
[RDF11-CONCEPTS]
From bba35a2d6615106aeb48eb867d56f01f815e852d Mon Sep 17 00:00:00 2001 From: Sarven Capadisli Date: Thu, 25 Aug 2022 14:53:22 +0200 Subject: [PATCH 2/2] Minor. Restructure content --- protocol.html | 68 +++++++++++++++++++++++++-------------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/protocol.html b/protocol.html index 3f7c63f..bfcf170 100644 --- a/protocol.html +++ b/protocol.html @@ -509,19 +509,6 @@

Issue: Solid Notification Vocabulary and

Discovery

-

The following properties are used for the discovery of a notification channel and its capabilities:

- -
-
feature
-
feature predicate denotes a particular feature of a notification channel (Notification Features).
-
notificationChannel
-
notificationChannel predicate denotes that a resource has a notification channel.
-
subscription
-
subscription predicate denotes a subscription resource associated with a notification channel (Subscription).
-
type
-
type predicate (rdf:type) denotes the notification channel type (Notification Channel).
-
-

Notification Channel Discovery

@@ -537,6 +524,21 @@

Notification Channel Discovery

+ +

The following properties are used for the discovery of a notification channel and its capabilities:

+ +
+
feature
+
feature predicate denotes a particular feature of a notification channel (Notification Features).
+
notificationChannel
+
notificationChannel predicate denotes that a resource has a notification channel.
+
subscription
+
subscription predicate denotes a subscription resource associated with a notification channel (Subscription).
+
type
+
type predicate (rdf:type) denotes the notification channel type (Notification Channel).
+
+ +

Servers MUST include the @context field as an array containing the value https://www.w3.org/ns/solid/notification/v1 in the JSON-LD representation of a Notification Channel Resource.

@@ -552,21 +554,17 @@

Notification Channel Conformance

  • Zero or more notify:feature property values (Notification Features).
  • Zero or one notify:subscription property value (Notification Subscription).
  • -
    -
    -

    Servers MUST include the @context field as an array containing the value https://www.w3.org/ns/solid/notification/v1 in the JSON-LD representation of a Notification Channel Resource.

    - -

    - Sample representations of the Notification Channel Resource might include the following: -

    +

    + Sample representations of the Notification Channel Resource might include the following: +

    -
    -

    - Example: Representation of a Notification Channel Resource. -

    +
    +

    + Example: Representation of a Notification Channel Resource. +

    -
    Content-Type: text/turtle
    +                        
    Content-Type: text/turtle
     
     @prefix notify: <http://www.w3.org/ns/solid/notifications#> .
     
    @@ -579,15 +577,15 @@ 

    Notification Channel Conformance

    notify:feature notify:state, notify:rate, notify:expiration .
    -
    Turtle serialization of a resource including notification channel information.
    -
    +
    Turtle serialization of a resource including notification channel information.
    +
    -
    -

    - Example: Representation of a Notification Channel Resource. -

    +
    +

    + Example: Representation of a Notification Channel Resource. +

    -
    Content-Type: application/ld+json
    +                        
    Content-Type: application/ld+json
     
     {
       "@context": [
    @@ -601,8 +599,10 @@ 

    Notification Channel Conformance

    }] }
    -
    JSON-LD serialization of resource including notification channel information.
    -
    +
    JSON-LD serialization of resource including notification channel information.
    +
    + +