Bước tới nội dung

Bản mẫu:C

Từ Capsach

This is the source of the wiki page Template:C.

THE citation twin of Template:T (binding contract, 2026-08-22). It renders BYTE-IDENTICALLY to Template:T — the same .fig-cite[data-fig] span — so the click-to-source gadget's citation lane (MediaWiki:Gadget-figureSource.js) binds a exactly as it binds a , with no gadget change.

The difference is RELATION, not render (see tools/doc_archive/design/binding_contract.md §1, §5):

  • is a BINDING — "this span of source ink IS datum X" — and lives
 only on the source surfaces (the transcript and its sidecar), where an
 id is minted.
  • is a CITATION — "this derived statement RESTS ON datum X" — and
 lives on non-source pages (the analytic reading face, bot answers,
 model sheets). It carries an id but owns no ink; clicking it resolves
 through the sidecar back to the source.

A parser tells them apart by template name and surface; a reader mostly cannot, which is the point — a bound figure and a cited figure read the same. The analytic-page write path emits at settle time (tools/doc_archive/summary/render.py); the transcript keeps .

Usage:

 110,316                          cited value token
 110.316                 … canonical value + house format

Rendering (the hybrid, 2026-09-07 — the same expression as Template:D, in both branches below; keep the copies identical). The house formats 0, 0.0, 0.00 and #,##0 render natively (verbatim, or formatnum with an ASCII-minus guard and an #iferror fallback for a non-numeric value); every other format goes to Module:Numfmt. Correct only because a token's value is canonical and already quantized to its format's decimals — the mint's contract (the PDF lane infers the format FROM the printed digits, the xlsx lane quantizes through numfmt.canonical_number). Each #invoke costs ~0.3 ms of Lua against a 7 s per-page limit; on 4,000 cells the hybrid takes 1.2 s CPU against the previous body's 2.6 s (1.2 s of it Lua), byte-identically (py -m tools.wiki.numfmt_check). #switch compares numeric-looking labels as numbers, so the three zero-decimal formats are one case — fine while they share a result.

The def third parameter is legacy-only (it retires with Template:T's under the binding contract — words are LINKED, not bound, so Definition markup belongs to the linker's plain Definition:… links, never to a figure template). The branch is kept only so a renders identically to a for any parameter shape.

The id rules are Template:T's, unchanged: minted once, never an address, never re-used; resolvable from any page via Data:doc index.json and the figures sidecar. tabindex is the load-bearing iOS detail (a focusable element passes Safari's "clickable" heuristic).

The plain value follows a <nowiki/> (2026-10-02): MediaWiki starts a new line before parser-function output that begins with #, *, : or ;, so a value such as "# of replies" rendered as a numbered list beside an empty token span.