Selectively bringing constructors or record fields into scope

Yes, exactly. In most cases I would like to be in control of what I bring into scope. When it comes to constructors and record fields, however, it wasn’t as easy to find out how it works, but @octachron gave the answer above:

I searched the manual, and it seems like there is no example given, but it is mentioned here in the manual:

Re-exported variant type or record type: an equation, a representation.

In this case, the type constructor is defined as an abbreviation for the type expression given in the equation, but in addition the constructors or fields given in the representation remain attached to the defined type constructor. The type expression in the equation part must agree with the representation: it must be of the same kind (record or variant) and have exactly the same constructors or fields, in the same order, with the same arguments. Moreover, the new type constructor must have the same arity and the same type constraints as the original type constructor.

Maybe the syntax isn’t so bad, considering that I explicitly want to bring the constructors/fields into scope, so writing them down seems reasonable.