Changes from 0.3
disl0.80.8Changes from 0.3
Contents of DISL 0.8
DISL 0.4 (draft, 2026-10-09) adds the constructs listed below, approved by the product owner with the Agent activity diagram's design on 2026-10-09 (its language decisions L1 to L7, and L9 ruled in chat the same day); each is optional, and its absence is the 0.3 behaviour. Every valid 0.3 specification is a valid 0.4 specification with the same meaning, apart from the clarifications in the second table.
| Construct | Section | Schema |
|---|---|---|
paths on a uri attribute: a path, absolute or relative to the file, as well as a URI (L6) |
4.2 | Attribute.paths |
groupBy on a compartment, with a collapse default per value (L1) |
6.9 | Compartment.groupBy, $defs/GroupBy |
| A declared collapse state is the default; a stored state wins and is stored only while it differs (L2) | 6.9, 11.6 | – |
itemOrder on a compartment (L9) |
6.9 | Compartment.itemOrder |
itemLink on a compartment; a badge with onClick is focusable and activatable (L6) |
6.9 | Compartment.itemLink |
persist on a canvas filter, and the view kind filters in view.store (L3) |
6.13.1, 11.6 | Filter.persist, $defs/ViewKind |
The standard context entries pin, unpin and unpinAll; pinned on the view action; a drag pins under respect: "pinned" (L4) |
7.3, 9.4, 10.4 | ContextTool.kind, Action.view.pinned |
groups on the view action, and the view kind groups (L1, L2) |
9.4, 11.6 | Action.view.groups, $defs/ViewKind |
The open action (L6) |
9.4 | Action.open |
force with tiers, and the properties its result must have (L5) |
10.4 | LayoutConfig.force, $defs/ForceLayout |
view.bind: stored view data kept in entries of a format binding's body (L7) |
11.6 | Persistence.view.bind, $defs/ViewBind |
| # | Change | 0.3 said | 0.4 says | Reason | Section |
|---|---|---|---|---|---|
| 1 | A view action on stored view data |
Changes viewer state only: never persisted, never undone. | A change to a stored kind (pinned, groups, a kept filter) is an edit: written, undone with its operation, refused in read-only mode. Viewer state keeps the 0.3 rule. |
Locking a position and folding a group are kept in the file and undone like any edit. | 9.4 |
| 2 | A compartment's collapsed |
The collapse state, persisted in view data. | The default of the state; the stored state wins, and is stored only while it differs from the default. | A group nobody touched follows the specification, and the file stays small. | 6.9 |
| 3 | Where view data of a format binding lives | In the registration (FBL section 8.3). | In the registration, unless view.bind binds a kind into the body. |
A file agents write carries the user's arrangement with it. | 11.2, 11.6 |
DISL 0.4 needs no change to FBL: a bound view kind is an ordinary entry of the body (FBL section 5), planned, undone and reloaded as any other. The worked example work-board.dis, with its binding ../fbl/work-board.fbl, uses every construct of the first table.