SemText

Reference · SemText · Definitions & citations

<sem-property>

SemText element

The key attribute is the term; the text inside is its meaning. Add role=definition when the value defines the key.

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

One key–value pair in a properties grid. The key attribute is the term; the text inside is its meaning. Add role=definition when the value defines the key.

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

Example

sem-property.html
source
1 <sem-properties kind="config">
2 <sem-property key="token ttl" role="definition" aria-label="token ttl">15m</sem-property>
3 <sem-property key="refresh rotation" role="definition" aria-label="refresh rotation">per use</sem-property>
4 <sem-property key="storage" role="definition" aria-label="storage">httpOnly cookie</sem-property>
5 </sem-properties>
render

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

variant: compact `::` sugar without `key`

`<sem-property>storage :: httpOnly cookie</sem-property>` is legal authoring, and the runtime does not parse `::` — the text renders verbatim in the value column and no term is drawn. Sugar authors therefore also write `key` (conventions §3); the second row shows that pair, where the `key` attribute is the term and wins.

variant: compact `::` sugar without `key`
sem-property-sugar-keyless.html
source
1 <sem-properties kind="config">
2 <sem-property>storage :: httpOnly cookie</sem-property>
3 <sem-property key="token ttl" role="definition" aria-label="token ttl">ttl :: 15m</sem-property>
4 </sem-properties>
render

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

variant: multi-line value

A value keeps its authored whitespace (schema: keys wrap, values keep whitespace): each authored line renders as its own line. The preserve-whitespace rule ships with the next vocabulary sync — today's shipped render still collapses the line breaks here.

variant: multi-line value
sem-property-multiline-value.html
source
1 <sem-properties kind="env">
2 <sem-property key="cors origins" role="definition" aria-label="cors origins">https://app.noizu.com
3 https://admin.noizu.com</sem-property>
4 <sem-property key="session store" role="definition" aria-label="session store">redis, db 2,
5 key prefix sess:</sem-property>
6 </sem-properties>
render

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

variant: glossary term with prose anchor

Inside `view-as="glossary"` a property is a term: it stacks definition under term and its `id` is a plain-anchor target. With the reading bundle live the prose link gains a hover/focus preview of the pair (`Esc` closes; the anchor still navigates); with no script the block stays a definition list and the link highlights the property via `:target` — nothing hidden either way.

variant: glossary term with prose anchor
sem-property-glossary-term.html
source
1 <p>Both issuer settings are defined in the glossary: see <a href="#g-pkce">PKCE</a> and <a href="#g-confidential">confidential client</a>.</p>
2
3 <sem-properties kind="spec" view-as="glossary">
4 <sem-property id="g-pkce" key="PKCE" role="definition" aria-label="PKCE">Proof Key for Code Exchange — binds the authorization code to the verifier that minted it.</sem-property>
5 <sem-property id="g-confidential" key="confidential client" role="definition" aria-label="confidential client">A client able to hold its secret server-side; the browser never sees it.</sem-property>
6 </sem-properties>
render

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

Source: spec/schema/sem-properties.md