A feature control frame will have a segment count.
An FCF will have a tolerance type.
An FCF will have a tolerance value.
An FCF will have 0 - 3 datum references.
A tolerance value may have a zone shape.
A tolerance value may have a material modifier.
A tolerance value may have a unilateral specification.
A tolerance value may have a projected designation and length.
A datum reference may be a compound datum.
A datum reference may have a material modifier.
A datum reference may have a controlled direction specification.
A datum reference may allow translation.
A composite tolerance has rules about datum reference subsets.
A composite tolerance has rules about tolerance values for successive subsets.