Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
954085c
Add introduction section
jeremycaine May 15, 2026
31b52dd
Add scope diagrams section with C4 Level 1 and Level 2 diagrams
jeremycaine May 15, 2026
0a39c38
Update lws10-core/index.html
jeremycaine Jun 11, 2026
cf9be25
Update lws10-core/index.html
jeremycaine Jun 11, 2026
4ada3f2
Update lws10-core/index.html
jeremycaine Jun 11, 2026
8f7c768
Update lws10-core/index.html
jeremycaine Jun 11, 2026
25cdda7
Update lws10-core/index.html
jeremycaine Jun 11, 2026
1e1ea84
Update lws10-core/index.html
jeremycaine Jun 27, 2026
685d6fb
Update lws10-core/index.html
jeremycaine Jun 29, 2026
aba265c
Update lws10-core/diagrams/fig-2-container-diagram.md
jeremycaine Jun 29, 2026
99e8716
Restore missing content in lws10-core/index.html
jeremycaine Jun 30, 2026
abca902
Merge branch 'scope-diagrams' of https://github.com/jeremycaine/lws-p…
jeremycaine Jun 30, 2026
810e52e
Restore missing content
jeremycaine Jun 30, 2026
3187ac4
Merge branch 'introduction-section' of https://github.com/jeremycaine…
jeremycaine Jun 30, 2026
29ece08
edits in response to comments
jeremycaine Jul 6, 2026
624685f
corrected identtity server scope
jeremycaine Jul 7, 2026
66c4303
reworked diagrams using LikeC4 and markdown descriptions of each
jeremycaine Jul 10, 2026
457cfc8
updated core index.html to show diagrams
jeremycaine Jul 10, 2026
7fe9a79
updated core index.html with table text of diagram elements
jeremycaine Jul 10, 2026
ccafd9d
Merge branch 'main' into introduction-section
jeremycaine Jul 13, 2026
c6295b9
Merge branch 'introduction-section' of https://github.com/jeremycaine…
jeremycaine Jul 14, 2026
da07c8f
updated diagrams for agent
jeremycaine Jul 14, 2026
419ceeb
Update lws10-core/diagrams/figures.md
jeremycaine Jul 20, 2026
a99f7df
Update lws10-core/diagrams/figures.md
jeremycaine Jul 20, 2026
93eda0c
updated model and diagrams after working session 23 Jul 2026. Include…
jeremycaine Jul 23, 2026
d8822e8
Remove figures.md
jeremycaine Jul 23, 2026
c6b937a
Merge branch 'main' into scope-diagrams
jeremycaine Jul 23, 2026
803567b
Diagrams ready for PR merge. Reduced to simplest set of elements to p…
jeremycaine Jul 23, 2026
04fa8e8
Merge branch 'scope-diagrams' of https://github.com/jeremycaine/lws-p…
jeremycaine Jul 23, 2026
73775ee
Update lws10-core/diagrams/lws10-core.c4
jeremycaine Jul 27, 2026
4df6eb0
Update lws10-core/index.html
jeremycaine Jul 27, 2026
ce51913
Update lws10-core/diagrams/lws10-core.c4
jeremycaine Jul 27, 2026
f8a88a6
Update lws10-core/diagrams/lws10-core.c4
jeremycaine Jul 27, 2026
88b9eb2
Merge branch 'main' into scope-diagrams
jeremycaine Jul 27, 2026
e917c16
diagram discussion iteration result in one diagram
jeremycaine Jul 27, 2026
d095282
Merge branch 'main' into scope-diagrams
jeremycaine Jul 27, 2026
c535c31
new svg diagrams
jeremycaine Jul 27, 2026
683b542
Merge branch 'main' into scope-diagrams
acoburn Jul 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions lws10-core/diagrams/fig-1-system-context.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# LWS Protocol — System Context (C4 Level 1)

```mermaid
C4Context
title LWS Protocol — system context

Person(user, "User", "Person accessing resources")
System(client, "Client application", "Requests and manages resources")
System(lws, "LWS server", "Manages resource hierarchy and access")
System_Ext(idp, "Identity provider", "Issues signed credentials")
System_Ext(ext, "External resources", "Web resources under management")

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.

What do you mean by "external resources"? Are these the same as the "LWS resources" we defined in the terminology? If so, it might be best to re-use that term.

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
System_Ext(ext, "External resources", "Web resources under management")
System_Ext(ext, "LWS resources", "Web resources under management")


Rel(user, client, "uses")
Rel(client, lws, "HTTP requests")
Rel(lws, idp, "validates credential")
Rel(lws, ext, "mediates access to")
```

1 change: 1 addition & 0 deletions lws10-core/diagrams/fig-1-system-context.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
27 changes: 27 additions & 0 deletions lws10-core/diagrams/fig-2-container-diagram.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# LWS Protocol — Container Diagram (C4 Level 2)

```mermaid
C4Container
title LWS Protocol — container diagram

Person(user, "User", "Person accessing resources")
System(client, "Client application", "Requests and manages resources")
System_Ext(idp, "Identity provider", "Issues signed credentials")
System_Ext(ext, "External resources", "Web resources under management")

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
System_Ext(ext, "External resources", "Web resources under management")
System_Ext(ext, "LWS resources", "Web resources under management")


Boundary(lws, "LWS server") {
Container(authn, "Authentication", "Validates credential against identity provider")
Container(authz, "Authorization", "Enforces resource manager access decisions")
Container(rm, "Resource Management", "Manages containers, containment and linksets")

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 would rephrase the description to be "Manages containers, metadata and data resources" (linksets are a particular type of metadata resource that don't need explicit mention)

Container(era, "External Resource Access", "Mediates access to external web resources")

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 would remove this line. The LWS protocol does not define any behavior to interact with "external resources"

}

Rel(user, client, "uses")
Rel(client, authn, "presents credential")
Rel(authn, idp, "validates credential")
Rel(authn, authz, "confirmed identity")
Rel(authz, rm, "permitted operation")
Rel(rm, era, "resolves resource")
Rel(era, ext, "accesses")
```
Issue: The internal organisation of container, containment, and linkset management within the LWS server is not yet defined in the protocol. This diagram reflects current terminology and is subject to revision.

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.

The internal organization is intentionally not defined by the protocol -- that is an implementation detail. I would remove this line.

1 change: 1 addition & 0 deletions lws10-core/diagrams/fig-2-container-diagram.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
32 changes: 30 additions & 2 deletions lws10-core/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -168,11 +168,39 @@ <h2>Security and Privacy</h2>
</p>

<p>
A <dfn>LWS Client</dfn> is an HTTP client [[!rfc9112]] that complies with all of the relevant "MUST" statements in this specification. Specifically, the relevant normative "MUST" statements in <a href="#operations"></a> of this document MUST be respected.
An <dfn>LWS Client</dfn> is an HTTP client [[!rfc9112]] that complies with all of the relevant "MUST" statements in this specification. Specifically, the relevant normative "MUST" statements in <a href="#operations"></a> of this document MUST be respected.
</p>
</section>
</section>

<section id="scope-diagrams"> <!-- becomes 2.4 Scope Diagrams -->
<h2>Scope Diagrams</h2>
<p>
The following diagrams are platform-independent models
to guide implementation.
</p>
<p>
Figure 1 shows the System Context, identifying the user, the systems
that interact with a compliant LWS server, and the external systems on
which the protocol depends.
</p>
<figure id="fig-1-system-context">
<img src="diagrams/fig-1-system-context.svg"
alt="LWS Protocol system context diagram showing the user, client application, LWS server, identity provider, and external resources"/>

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 would remove "external resources" from this description

<figcaption>LWS Protocol &mdash; system context (C4 Level 1)</figcaption>
</figure>
<p>
Figure 2 shows the Container Diagram, describing the protocol-level
responsibilities within a compliant LWS server and the relationships
between them.
</p>
<figure id="fig-2-container-diagram">
<img src="diagrams/fig-2-container-diagram.svg"
alt="LWS Protocol container diagram showing authentication, authorization, resource management, and external resource access within the LWS server boundary"/>

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
alt="LWS Protocol container diagram showing authentication, authorization, resource management, and external resource access within the LWS server boundary"/>
alt="LWS Protocol container diagram showing authentication, authorization, and resource management within the LWS server boundary"/>

<figcaption>LWS Protocol &mdash; container diagram (C4 Level 2)</figcaption>
</figure>
</section>

</section>
<section id="terminology">
<h2>Terminology</h2>
<p>
Expand Down
Loading