line
A locator-based leaf that inspects physical prose lines by a `label=` prefix and checks each value with `mask=` (SPEC §5). Absent is silent; a present-but-malformed value fails; `required` means at least one matching line exists. Code fences are excluded. Close with `endline`.
Leaf tag · open <!-- mdv: line … --> · close <!-- mdv: endline -->
<!-- mdv: line required label="Status:" mask="<word|oneOf:[Active, Blocked]>" -->
Status: Active
<!-- mdv: endline -->Props
| Prop | Syntax | Category | Description |
|---|---|---|---|
mask | mask=<option> | content | Validate every labeled line in the line leaf against a value mask — malformed values fail per line, absent stays silent, required demands at least one matching line. Requires a sibling label=. |
label | label=<option> | content | The literal line prefix a line leaf's mask= inspects (case-insensitive match at line start). |
Prop details
mask
Validate every labeled line in the line leaf against a value mask — malformed values fail per line, absent stays silent, required demands at least one matching line. Requires a sibling label=.
mask=<option> · category: content · status: stable · src/pipeline/rules/content/shape/line-mask.ts
The line leaf's value check (SPEC §5): scan the section's physical prose lines for lines opening
with the sibling label= literal (case-insensitive, ^<label>\s* — flexible whitespace),
validating each such line's remaining value against mask=. Polarity:
- a present line whose value fails the mask →
label-line-mismatchat that line; - absent (no matching line) with no
required→ silent (well-formedness, not presence); required+ at least one prose line present but NONE matching the label →missing-line. All matching lines are validated (SPEC §5 multiplicity). The scan is fence-excluding by construction: it walks paragraph/blockquote/list nodes only, socodenodes are never visited. A token may carry a:in(ref)membership modifier, checked against the document's sources asunknown-entityonce the value shape matches (honest-null when no sources capability is supplied).
<!-- mdv: line required label="Status:" mask="<word|oneOf:[Active, Blocked]>" -->
Status: Active
<!-- mdv: endline -->label
The literal line prefix a line leaf's mask= inspects (case-insensitive match at line start).
label=<option> · category: content · status: stable · src/pipeline/rules/content/shape/line-mask.ts
Modifier: the literal line prefix mask inspects on a line leaf. A plain quoted literal — not a
mask (tokens make no sense in an anchor; a label that needs regex machinery is a sign the check
wants pattern.mask instead). Consumed by mask's run() via the field's raw rule map.