Tiering model
Edit this page on GitHub →A component never makes you supply a data blob if a short identifier is enough for it to fetch or derive the rest itself. That rule produces five tiers — pick the lowest one a component actually offers.
| Tier | You write | The component does |
|---|---|---|
| 0 — zero config | nothing but a URL/DOI | auto-detect + fetch |
| 1 — single ID | one accession/identifier | fetch + parse + render |
| 2 — composite key | 2–4 short fields | fetch + parse + render |
| 3 — inline literal | the actual short content | parse + render, no fetch |
| 4 — full data/URL | a structured blob | render only — an escape hatch, not the default |
Tier 1 — one identifier
A single PDB ID is enough; the component fetches and parses the structure itself:
That's ::structure{pdbid="1CRN"} — no structure file, no coordinates, just the ID.
Tier 2 — a few short fields
A genomic region — chromosome, start, end — not a blob of association data:
That's ::locuszoom-assoc{chrom="10" start="114550452" end="115067678"} — the component fetches and plots the association data itself.
Tier 3 — inline, no fetch
Small enough to write directly — a bar chart from numbers you already have, no file to host:
That chart above is ::bar-chart{labels="Mon,Tue,Wed" values="4,7,3" title="Example"} — no data URL, just the numbers.
Tier 4 — full data
An escape hatch, not a default. If you're reaching for a component that only accepts a structured blob or a hosted-file URL, check whether a lower-tier form exists first — most components in this catalog don't offer Tier 4 at all, by design.