Skip to content

Add introduction section#158

Open
jeremycaine wants to merge 9 commits into
w3c:mainfrom
jeremycaine:introduction-section
Open

Add introduction section#158
jeremycaine wants to merge 9 commits into
w3c:mainfrom
jeremycaine:introduction-section

Conversation

@jeremycaine

@jeremycaine jeremycaine commented May 15, 2026

Copy link
Copy Markdown

Editorial - write an introduction section to the LWS specification


Preview | Diff

Comment thread lws10-core/index.html Outdated
Comment thread lws10-core/index.html Outdated
Comment thread lws10-core/index.html Outdated
Comment thread lws10-core/index.html Outdated
Comment thread lws10-core/index.html Outdated
Comment thread lws10-core/index.html Outdated
jeremycaine and others added 5 commits June 11, 2026 17:10
relaxing as JSON-LD is not only media type

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
elaborate on private, public and restricted

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
point that an LWS account not required; plus CIDs

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Comment thread lws10-core/index.html
</p>
<p>This specification is intended to be used by:</p>
<ul>
<li>Developers building client applications that access a user&rsquo;s LWS resources</li>

@ebremer ebremer Jun 15, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<li>Developers building client applications that access a user&rsquo;s LWS resources</li>
<li>Developers building client applications that access a user's external web resources</li>

An LWS Resource isn't defined yet

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ebremer we define LWS Resource in Terminology

@ebremer ebremer Jun 29, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but it comes after. I suggest we keep your text the same and hyperlink it to the definition.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<li>Developers building client applications that access a user&rsquo;s LWS resources</li>
<li>Developers building client applications that access a user&rsquo;s <a>LWS resource</a>s</li>

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Comment thread lws10-core/index.html
<li>Server implementers building compliant LWS servers that mediate access to a user&rsquo;s external web resources</li>
</ul>
<p>
Different compliant servers each maintain their own hierarchy of linked resources. A user can navigate across servers using the same identity, with access to each server&rsquo;s resources determined by the permissions granted by that server&rsquo;s resource managers.

@TallTed TallTed Jun 29, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm curious why the ampersand-escaped curly apostrophes (’ &rsquo;) are preferred over the straight (' &apos;), where the latter are easily typed and read as a single character in the HTML source as well as the delivered rendering, while the former require careful typing and reading of 7 characters wedged between two other non-space characters, as well as the non-space characters surrounding those 7, all of which means that spell-check is even less helpful than usual, when checking HTML files.

Comment thread lws10-core/index.html
This specification defines the Linked Web Storage (LWS) Protocol, which enables client applications to access and manage web resources stored externally, based on the identity and permissions of the user.
</p>
<p>
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.
By standardising how an LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.

Comment thread lws10-core/index.html
This specification defines the Linked Web Storage (LWS) Protocol, which enables client applications to access and manage web resources stored externally, based on the identity and permissions of the user.
</p>
<p>
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we sure "containers and containment relationships" and "metadata" are of equal (and most important) weight regarding what is meant by "linked resources"? I thought container is a specification detail, and what matters more is the metadata and returned JSON-LD/RDF document about resource locations / relationships.

Comment thread lws10-core/index.html
This specification defines the Linked Web Storage (LWS) Protocol, which enables client applications to access and manage web resources stored externally, based on the identity and permissions of the user.
</p>
<p>
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The part "metadata that describes how the resources relate to each other" doesn't appear right to me... Metadata are more than that, even just considering the most critical parts of LWS (e.g. access / permission, types, etc).

Comment thread lws10-core/index.html
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.
</p>
<p>
The protocol defines standard operations on these resources to create, read, update, and delete. Resources, their containment, and their metadata are managed by the server, commonly as a set of JSON-LD documents. Each resource is identified by a URI. A client navigates the resource hierarchy from a root container, discovering contained resources and their relations through links provided in server responses.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The protocol defines standard operations on these resources to create, read, update, and delete. Resources, their containment, and their metadata are managed by the server, commonly as a set of JSON-LD documents. Each resource is identified by a URI. A client navigates the resource hierarchy from a root container, discovering contained resources and their relations through links provided in server responses.
The protocol defines standard operations on these resources to create, read, update, and delete. Resources, their containment, and their metadata are partially managed by the server, commonly as a set of JSON-LD documents. Each resource is identified by a URI. A client navigates the resource hierarchy from a root container, discovering contained resources and their relations through links provided in server responses.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@renyuneyun
Since "Resources" are included in the list, I don't think that "managed" here means "has exclusive control over", and so "partially" may not be required here...

@jeremycaine
I would remove "commonly as a set of JSON-LD documents." which overemphasizes the role of JSON-LD in LWS. Granted, all LWS-specific resources (containers, in particular) have JSON-LD representations. But primary resources and metadata can use a variert of other formats.

Comment thread lws10-core/index.html
The protocol defines standard operations on these resources to create, read, update, and delete. Resources, their containment, and their metadata are managed by the server, commonly as a set of JSON-LD documents. Each resource is identified by a URI. A client navigates the resource hierarchy from a root container, discovering contained resources and their relations through links provided in server responses.
</p>
<p>
A user&rsquo;s identity is confirmed through an identity provider external to the Linked Web Storage server. This separation means the server does not manage credentials directly; rather, it receives and validates a signed authentication credential as a token issued by a trusted identity provider. A user can therefore present their existing identity to any compliant server, without needing a new or existing separate account on that server. User authentication is defined in companion specifications for OpenID Connect, SAML 2.0, and self-signed controlled identifiers (CIDs).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A user&rsquo;s identity is confirmed through an identity provider external to the Linked Web Storage server. This separation means the server does not manage credentials directly; rather, it receives and validates a signed authentication credential as a token issued by a trusted identity provider. A user can therefore present their existing identity to any compliant server, without needing a new or existing separate account on that server. User authentication is defined in companion specifications for OpenID Connect, SAML 2.0, and self-signed controlled identifiers (CIDs).
A user&rsquo;s identity is confirmed through an identity provider that can be external to the Linked Web Storage server. This separation means the server does not manage credentials directly; rather, it receives and validates a signed authentication credential as a token issued by a trusted identity provider. A user can therefore present their existing identity to any compliant server, without needing a new or existing separate account on that server. User authentication is defined in companion specifications for OpenID Connect, SAML 2.0, and self-signed controlled identifiers (CIDs).

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understood from the April f2f that we said an LWS server does not implement the identity server - out of scope, an external system. If that is not correct then we can apply your suggestion. Do others recall?

@acoburn acoburn Jul 6, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From the f2f meeting, an LWS server is not required to implement an identity server. That is different than saying that an LWS server must not implement an identity server. The suggested change clarifies that an identity provider can be external to the LWS server (but is not required to be)

Comment thread lws10-core/index.html
By standardising how a LWS server manages and provides access to a hierarchy of linked resources, the protocol enables users to use different LWS client applications to interact with the same stored data. These linked resources are defined through containers and containment relationships that describe where things are located, and metadata that describes how the resources relate to each other.
</p>
<p>
The protocol defines standard operations on these resources to create, read, update, and delete. Resources, their containment, and their metadata are managed by the server, commonly as a set of JSON-LD documents. Each resource is identified by a URI. A client navigates the resource hierarchy from a root container, discovering contained resources and their relations through links provided in server responses.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@renyuneyun
Since "Resources" are included in the list, I don't think that "managed" here means "has exclusive control over", and so "partially" may not be required here...

@jeremycaine
I would remove "commonly as a set of JSON-LD documents." which overemphasizes the role of JSON-LD in LWS. Granted, all LWS-specific resources (containers, in particular) have JSON-LD representations. But primary resources and metadata can use a variert of other formats.

Comment thread lws10-core/index.html
<p>This specification is intended to be used by:</p>
<ul>
<li>Developers building client applications that access a user&rsquo;s LWS resources</li>
<li>Server implementers building compliant LWS servers that mediate access to a user&rsquo;s external web resources</li>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<li>Server implementers building compliant LWS servers that mediate access to a user&rsquo;s external web resources</li>
<li>Server implementers building compliant LWS servers that mediate access to a user&rsquo;s web resources</li>

I don't understand why those resources are qualified as "external". External to what? I read it as "external to the server", which is not the idea I have of your typical LWS resource. (yes, an LWS server, just like an HTTP server, could be a front-end for a legacy system which is the actual "location" of the resources, but many LWS servers will actually "own" their resources -- plus, from the client's perspective, this distinction does not really matters).

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have removed references to 'externally managed'. I now see it that an LWS server define 1 or more storages. Those storages are at any URL location. Then the LWS manages a hierarchy of containers/data resource in those storages. The LWS server does CRUD on the data resources. Some other non-LWS external actor has the power to delete a resource by example - resulting in the LWS hierarchy information being out of sync (and so return 'resource not found' error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants