The three cases are not decoration. Each licenses a different rewrite in section 5, and the
difference between the first two is the difference between a LEFT JOIN that can be turned into
an inner one and one that cannot.
Every child row matches exactly one parent row: the key is not null anywhere and every value
is present in the parent. This licenses pushing an aggregate through the relationship and
turns a LEFT JOIN into an inner join.
The parent side was not unique, or verification did not run. No link is built. The planner
is told so that it plans an ordinary hash join rather than waiting for a structure that is
never going to arrive.
If the tag is not one of the three, which means a file from a later build. The caller drops
the section, per the rule in section 3.2 that a reader ignores what it does not know.