Attribute is a way to point some substructure inside some structure. Could be unwrapped to a Reference: Supertype (Attribute s t) ~ Reference s t t If you want to use an Attribute by a type signature, there is at method: at :: Attribute structure substructure You can use some Attribute to zoom in a Transition.