DESL — Designer Specification Language
Contents of DESL 0.2
Specification, version 0.2 (Draft)
| Date | 2026-10-24 |
| Kind | designer |
| Role | specification language |
| File extension | .des |
| Paired language | DED, the Designer Definition Language (.ded) |
| Document schema | desl.schema.json (JSON Schema, draft 2020-12), $defs/Specification |
| Builds on | FBL 0.7 for storage |
| Expression language | CEL — Common Expression Language (https://cel.dev) |
| Licence | Apache License 2.0 (Apache-2.0) |
This is a draft, version 0.2. It holds what the designer types defined so far need and nothing more (constitution principle V), and any construct may change before 1.0 (constitution principle IV). DESL 0.1 (2026-10-09, spec 013) holds what the Knowledge designer (definitions/designers/knowledge.des) needs. DESL 0.2 (2026-10-14, spec 028, for the Hierarchical Requirement Designer) adds five constructs: the surface kind hierarchy (section 7.7), the id strategy counter (section 5.3.5), the facet mentions with the built-in std.mentions (sections 4.3, 6.5), the action move (section 8.2), and persistence.settings, the part of the model a document's registration keeps (section 5.5); by the maintainer's ruling of 2026-10-24 it also gives a hierarchy the widths of its columns of levels, which the user changes by dragging (widths, section 7.7). Every valid 0.1 specification is a valid 0.2 specification with the same meaning. DESL defines every construct it uses; it takes nothing from the specification languages of the other kinds of tool. Sections and paragraphs marked (informative) explain intent; everything else is normative.
The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY and OPTIONAL are to be interpreted as described in RFC 2119 and RFC 8174 when, and only when, they appear in bold capitals.