SemText

Reference · SemText · Document & structure

<sem-profile>

SemText element

You give it an id and a short label. Sections tagged with this id show or hide as the reader switches groups.

Shares its schema with <sem-audiences> — the option bullets below belong to that element's contract.

Names one reader group inside a sem-audiences block. You give it an id and a short label. Sections tagged with this id show or hide as the reader switches groups.

No options beyond the global attribute catalog are stated for this tag.

Example

sem-profile.html
source
1 <sem-audiences>
2 <sem-profile id="reader" label="Reader"></sem-profile>
3 <sem-profile id="operator" label="Operator" implies="reader"></sem-profile>
4 </sem-audiences>
render

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

variant: chip without a label

A chip carries the profile's `label` when present, else its `id`. The strip is inert on its own: declarations gate nothing — visibility is decided by the `audience` qualifier against the active profile, which `<sem-audiences>` documents. The strip renders from the attributes alone; no script is involved.

variant: chip without a label
sem-profile-id-chip.html
source
1 <sem-audiences>
2 <sem-profile id="operator"></sem-profile>
3 <sem-profile id="reader" label="Reader"></sem-profile>
4 </sem-audiences>
render

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

variant: implies closure

`implies` is how one profile subsumes another: an operator sees reader content, and a profile implying operator sees it too — the closure is transitive. The strip does not draw the edges; gating demonstrates them. With the bundle running and no active profile this note hides; as operator it shows (operator implies reader); as reader it hides. As rendered here — this pane carries no audience gating, the same all-visible state as JS-off — it shows.

variant: implies closure
sem-profile-implies-closure.html
source
1 <sem-audiences>
2 <sem-profile id="reader" label="Reader"></sem-profile>
3 <sem-profile id="operator" label="Operator" implies="reader"></sem-profile>
4 </sem-audiences>
5
6 <sem-note audience="reader">Planning context every working profile sees through the closure.</sem-note>
render

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

Source: spec/schema/sem-audiences.md