{tab} is the item of the three widgets that take a list of labelled parts: {tabs} (a tab and its panel), {accordion} (a <details> with the label as its summary) and {carousel} (a slide with the label as its caption). It prints nothing where it stands: its content is rendered, trimmed, and handed to the nearest of those owners above it, which builds its markup from the items once its own content has rendered.

Because the hand-over goes to the nearest owner and not to the direct parent, a tab may stand inside an {if}, or inside a loop that makes a tab per row of data: {tabs}{plans}{tab $name}...{/tab}{/plans}{/tabs}.

Under the strict check a {tab} outside any owner is an error, as is one that never closes, and a tab of a {tabs} or an {accordion} without a label. A carousel slide may go without a label; it then has no caption.