Overview
Tag-first reference for mediva's v1 syntax — every tag and the rules (props) you can put on it.
The model: open a tag that matches your content, attach props (a flag, or name=option), then close with its end tag. Pick a tag to see its props. Generated from the @example JSDoc on each definition.
| Tag | Role | Props | Description |
|---|---|---|---|
section | Container | 52 | The one heading-owning, recursive container tag. Wraps its ATX heading plus any own-prose or nested tags (child sections and leaves), and is the thing presence/body rules (required, minWords, noPlaceholder, …) and occurs= target. Sections nest, so a schema is an AST of sections — close every one with its endsection end tag. Opens directly before its ATX heading. |
table | Leaf tag | 12 | A Markdown table. The template body shows one example row; the validator checks the generated output, not the example. Close with endtable. |
list | Leaf tag | 17 | A bullet or numbered list. Constrain it with minItems, or hold each item to a bar with each.falsifiable / each.sourced. Close with endlist. |
taskList | Leaf tag | 6 | A checkbox checklist of work items. Pair with allChecked or maxChecked to gate completion. Close with endtaskList. |
evidenceList | Leaf tag | 14 | A list of evidence or verification items — reproduction steps, manual checks, citations. Use each.falsifiable to reject vague items and each.sourced to require a resolvable citation per item. Close with endevidenceList. |
choice | Leaf tag | 4 | A single- or multi-select choice expressed as checkboxes. oneChecked makes it single-select; maxChecked bounds a multi-select. Close with endchoice. |
code | Leaf tag | 3 | A fenced code block. codeFenceClosed catches a fence the model left open. Close with endcode. |
line | Leaf tag | 2 | 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. |
media | Leaf tag | 1 | A slot for visual evidence — a screenshot or video. requiredOrNA accepts an explicit N/A for changes with nothing visual to show. Close with endmedia. |
document | Marker | 40 | The document root. Wraps the whole file and is where document-scope rules (title, title.pattern, …) live. A structural marker — it takes no end<name>. |
front | Marker | 0 | A frontmatter key, written front <key>. Attaches presence/value rules to a single YAML frontmatter field. A structural marker — it takes no end<name>. |
| structure atoms | Scope | 9 | Constraints on a document/section's child sections. |
Keep Runbooks Executable
Require every runbook to carry real commands, a verification step, a rollback, and an owner.
section
The one heading-owning, recursive container tag. Wraps its ATX heading plus any own-prose or nested tags (child sections and leaves), and is the thing presence/body rules (`required`, `minWords`, `noPlaceholder`, …) and `occurs=` target. Sections nest, so a schema is an AST of sections — close every one with its `endsection` end tag. Opens directly before its ATX heading.