SemText

Reference · SemText · Sequences & progress

<sem-chronology>

SemText element

Each child is one event with a when date, an optional end date, and an optional status. You write the events in order; the element never sorts them. It can show the events as a timeline rail or as a plain list.

A timeline: dated events shown in the order they happened. Each child is one event with a when date, an optional end date, and an optional status. You write the events in order; the element never sorts them. It can show the events as a timeline rail or as a plain list. (recommended): the event's date or period start, as the author wants a machine to see it (ISO-8601 preferred, free text allowed). (optional): period end. (optional): `done | current | todo | blocked` — same vocabulary as `sem-step`. Absent means unannotated, **not** `todo`: an event is a record of something that happened, not a task. `timeline` (default) | `list`. Unknown values render as `timeline`. per the global attribute catalog (conventions.md §2) per the global attribute catalog (conventions.md §2) per the global attribute catalog (conventions.md §2) per the global attribute catalog (conventions.md §2)

Example

sem-chronology.html
source
1 <sem-chronology kind="release-history" view-as="timeline" role="list">
2 <sem-event role="listitem" when="2026-03-02" status="done">
3 <time datetime="2026-03-02">2 Mar 2026</time> v0.1 tagged — Lit bundle ships.
4 </sem-event>
5 <sem-event role="listitem" when="2026-06" until="2026-08" status="current">
6 <time datetime="2026-06">Jun–Aug 2026</time> Reading-experience waves.
7 </sem-event>
8 <sem-event role="listitem" when="2026-Q4">Theme pipeline.</sem-event>
9 </sem-chronology>
render

Live render boots with JavaScript — the authored source is alongside.

variant: view-as="list"

The list mode: no rail, events stack as plain rows and the date label sits inline with the prose. All four `status` values in one changelog — `todo` is the dashed marker; colour never carries the meaning alone.

variant: view-as="list"
sem-chronology-view-list.html
source
1 <sem-chronology kind="changelog" view-as="list" role="list">
2 <sem-event role="listitem" when="2026-02-11" status="done"><time datetime="2026-02-11">11 Feb 2026</time> Export pipeline lands.</sem-event>
3 <sem-event role="listitem" when="2026-05-04" status="done"><time datetime="2026-05-04">4 May 2026</time> Quiz-occlusion reveal ships.</sem-event>
4 <sem-event role="listitem" when="2026-08" status="blocked"><time datetime="2026-08">Aug 2026</time> Offline pack — blocked on the storage budget.</sem-event>
5 <sem-event role="listitem" when="2026-09" status="current"><time datetime="2026-09">Sep 2026</time> Reading-experience overhaul.</sem-event>
6 <sem-event role="listitem" when="2026-11" status="todo"><time datetime="2026-11">Nov 2026</time> Theme marketplace.</sem-event>
7 </sem-chronology>
render

Live render boots with JavaScript — the authored source is alongside.

variant: bare when/until — no <time>

With no `<time>` authored the CSS renders `when` — plus ` – until` for a period — as the date label via `attr()`; `view-as` omitted means the default `timeline`.

variant: bare when/until — no <time>
sem-chronology-bare-when.html
source
1 <sem-chronology kind="roadmap" role="list">
2 <sem-event role="listitem" when="2026-Q1" until="2026-Q2" status="done">Lit vocabulary consolidated.</sem-event>
3 <sem-event role="listitem" when="2026-Q3" status="current">Docs-overhaul waves.</sem-event>
4 <sem-event role="listitem" when="2026-Q4">Theme pipeline.</sem-event>
5 </sem-chronology>
render

Live render boots with JavaScript — the authored source is alongside.

Source: spec/schema/sem-chronology.md