From 38d7cf99121d2624a2229dffad011b258af77e7e Mon Sep 17 00:00:00 2001 From: Aaron Coburn Date: Mon, 29 Jun 2026 08:45:44 -0500 Subject: [PATCH 1/2] Define Storage Description Resources as a specialization of CID-1.0 --- lws10-core/Discovery.html | 15 ++++++++++++--- lws10-core/IANA-Considerations.html | 24 ++++++++++++++++++++++++ lws10-core/index.html | 2 +- lws10-core/lws-media-type.md | 5 ++++- lws10-vocab/vocabulary.yml | 28 ---------------------------- 5 files changed, 41 insertions(+), 33 deletions(-) diff --git a/lws10-core/Discovery.html b/lws10-core/Discovery.html index 97eb497..2fffd95 100644 --- a/lws10-core/Discovery.html +++ b/lws10-core/Discovery.html @@ -40,7 +40,10 @@

Data Model

 {
-  "@context": "https://www.w3.org/ns/lws/v1",
+  "@context": [
+    "https://www.w3.org/ns/cid/v1",
+    "https://www.w3.org/ns/lws/v1"
+  ],
   "id": "https://storage.example/",
   "type": "Storage",
   "service": [{
@@ -96,13 +99,19 @@ 

Storage Services

Storage Description Representation

- A storage description resource MUST be serializable with the media type application/lws+json. + A storage description resource is a specialization of a W3C Controlled Identifier document [[!CID-1.0]]. + It MUST be serializable with the media type application/lws+cid. + The @context property MUST be an array containing the URIs https://www.w3.org/ns/cid/v1 + and https://www.w3.org/ns/lws/v1. Other representations MAY be available via content negotiation.

 {
-  "@context": "https://www.w3.org/ns/lws/v1",
+  "@context": [
+    "https://www.w3.org/ns/cid/v1",
+    "https://www.w3.org/ns/lws/v1"
+  ],
   "id": "https://storage.example/",
   "type": "Storage",
   "capability": [{
diff --git a/lws10-core/IANA-Considerations.html b/lws10-core/IANA-Considerations.html
index 0e344c9..62f1cd4 100644
--- a/lws10-core/IANA-Considerations.html
+++ b/lws10-core/IANA-Considerations.html
@@ -86,3 +86,27 @@ 

The application/lws+json Media Type

application/lws+json.

+ +
+

The application/lws+cid Media Type

+ +

+ This specification registers the application/lws+cid media type for identifying + storage description documents conforming to the Linked Web Storage protocol as a specialization + of the W3C Controlled Identifiers 1.0 document format. +

+ +
    +
  • Type name: application
  • +
  • Subtype name: lws+cid
  • +
  • Required parameters: None
  • +
  • + Encoding considerations: Resources that use the application/lws+cid media type + are required to conform to all of the requirements for the application/json + media type and are therefore subject to the same encoding considerations specified in + Section 11 of [[RFC8259]]. +
  • +
  • Security considerations: As defined in this specification
  • +
  • Contact: W3C Linked Web Storage Working Group <public-lws-wg@w3.org>
  • +
+
diff --git a/lws10-core/index.html b/lws10-core/index.html index 01c7427..0c45656 100644 --- a/lws10-core/index.html +++ b/lws10-core/index.html @@ -197,7 +197,7 @@

Terminology

  • resource — a resource is, as described by [[WebArch]] and [[RFC3986]], “whatever might be identified by a URI”. Resources whose essential characteristics can be conveyed in a message (such as web pages, images, structured data objects...) are called information resources [[WebArch]].
  • storage — a set of hierarchically organized HTTP resources whose lifecycle is managed by the conventions described by the Linked Web Storage Protocol. A storage is described by a storage description resource which references a collection of services that provide affordances over those resources.
  • storage controller — an agent that controls all resources in a storage.
  • -
  • storage description — an LWS resource that enumerates and describes the storage root along with services and capabilities of a storage. Its representation conforms to the storage description data model.
  • +
  • storage description — an LWS resource, conforming to the requirements of a W3C Controlled Identifier document [[!CID-1.0]], that enumerates and describes the storage root along with services and capabilities of a storage.
  • storage root — a container at the root of a containment hierarchy of a storage. The storage root is the only LWS resource that does not have a parent in the LWS containment hierarchy nor a primary resource.
  • diff --git a/lws10-core/lws-media-type.md b/lws10-core/lws-media-type.md index 07981df..f5b80c5 100644 --- a/lws10-core/lws-media-type.md +++ b/lws10-core/lws-media-type.md @@ -1,6 +1,9 @@ ### LWS Media Type -LWS container representation and storage description resource MUST use the media type `application/lws+json`. +An LWS storage description resource MUST support the media type `application/lws+cid`. +The `application/lws+cid` media type identifies a document that is a specialization of a W3C Controlled Identifier document [[!CID-1.0]], extended with the LWS vocabulary. + +An LWS container representation MUST support the media type `application/lws+json`. While LWS container representations use JSON-LD conventions, the constraints and requirements for LWS justify the use of a specific media type. Because LWS containers can be considered a restricted profile of JSON-LD, implementations SHOULD consider the `application/ld+json; profile="https://www.w3.org/ns/lws/v1"` media type as equivalent to `application/lws+json`. diff --git a/lws10-vocab/vocabulary.yml b/lws10-vocab/vocabulary.yml index 773c0b8..ce8e41a 100644 --- a/lws10-vocab/vocabulary.yml +++ b/lws10-vocab/vocabulary.yml @@ -8,8 +8,6 @@ prefix: value: https://www.w3.org/ns/activitystreams# - id: schema value: https://schema.org/ - - id: sec - value: https://w3id.org/security# - id: ldp value: http://www.w3.org/ns/ldp# @@ -93,16 +91,6 @@ property: domain: lws:Storage comment: A capability supported by the storage. - - id: service - label: service - domain: lws:Storage - comment: A service associated with the storage. - - - id: serviceEndpoint - label: service endpoint - range: xsd:anyURI - comment: The URI of a service endpoint. - - id: storageDescription label: storage description range: xsd:anyURI @@ -175,22 +163,6 @@ property: range: xsd:dateTime comment: The date and time the activity was published. - - id: sec:verificationMethod - label: verification method - comment: A verification method associated with a key or identity. - - - id: sec:authentication - label: authentication - comment: An authentication method associated with an identity. - - - id: sec:controller - label: controller - comment: The entity that controls a verification method. - - - id: sec:publicKeyJwk - label: public key JWK - comment: A public key expressed as a JSON Web Key. - - id: ldp:inbox label: inbox range: xsd:anyURI From 062e7c276154365788f909a55e2f14e21e06fe91 Mon Sep 17 00:00:00 2001 From: Aaron Coburn Date: Fri, 3 Jul 2026 14:35:05 -0500 Subject: [PATCH 2/2] Update lws10-core/Discovery.html Co-authored-by: Pierre-Antoine Champin --- lws10-core/Discovery.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lws10-core/Discovery.html b/lws10-core/Discovery.html index 2fffd95..522ce5b 100644 --- a/lws10-core/Discovery.html +++ b/lws10-core/Discovery.html @@ -101,7 +101,7 @@

    Storage Description Representation

    A storage description resource is a specialization of a W3C Controlled Identifier document [[!CID-1.0]]. It MUST be serializable with the media type application/lws+cid. - The @context property MUST be an array containing the URIs https://www.w3.org/ns/cid/v1 + The @context property MUST be an array starting with the URIs https://www.w3.org/ns/cid/v1 and https://www.w3.org/ns/lws/v1. Other representations MAY be available via content negotiation.